Загрузил Лукьян Мирный

4 Manual Zan 4 Geostat&DSM 2022

реклама
Задача 4. Работа с программой Surfer. Изучение методов
интерполяции
Цель: 1. Знакомство с программой Surfer.
2. Изучение методов интерполяции с помощью программы Surfer.
Построение картограммы изолиний и поверхности для одного из почвенных
показателей, когда образцы получены в результате площадного опробования,
методом кригинга.
0. Общие сведения о программе Surfer
Небольшая американская фирма Golden Software, названная так по имени
города Голден в штате Колорадо, где она находится, существует с 1983 года и
занимается разработкой пакетов научной графики. Ее первый программный
продукт Golden Graphics System, выпущенный в том же году, предназначался для
обработки и вывода изображений наборов данных, описываемых двухмерной
функцией типа z = f(y,x). Впоследствии этот пакет получил название Surfer.
Автором Surfer и основателем компании был аспирант-гидрогеолог одного из
американских университетов.
Логику работы с пакетом можно представить в виде трех основных
функциональных блоков:
1) построение цифровой модели поверхности;
2) вспомогательные операции с цифровыми моделями поверхности;
3) визуализация поверхности.
Цифровая модель поверхности традиционно представляется в виде значений
в узлах прямоугольной регулярной сетки. Для хранения таких значений Surfer
использует собственные файлы с расширением .GRD (двоичного или текстового
формата), которые уже давно стали стандартом для пакетов математического
моделирования.
Возможно три варианта получения значений в узлах сетки:
1) по исходным данным, заданным в произвольных точках области (в узлах
нерегулярной сетки), с использованием алгоритмов интерполяции двухмерных
функций;
2) вычисление значений функции, заданной пользователем в явном виде. В
состав программы Surfer входит достаточно широкий набор функций –
тригонометрических, Бесселя, экспоненциальных, статистических и некоторых
других;
3) переход от одной регулярной сетки к другой, например, при изменении
дискретности сетки (здесь, как правило, используются достаточно простые
алгоритмы интерполяции и сглаживания, так как считается, что переход
выполняется от одной гладкой поверхности к другой).
Кроме того, разумеется, можно использовать готовую цифровую модель
поверхности, полученную пользователем, к примеру, в результате численного
моделирования.
Пакет Surfer предлагает своим пользователям несколько алгоритмов
интерполяции: кригинг (Kriging), метод обратных расстояний (Inverse Distance to a
Power), минимизация кривизны (Minimum Curvature), радиальные базовые
функции (Radial Basis Functions), полиномиальная регрессия (Polynomial
Regression), модифицированный метод Шепарда (Modified Shepard’s Method),
Триангуляция (Triangulation) и др.
Расчет регулярной сетки может выполняться для файлов наборов данных X,
Y, Z любого размера, а сама сетка может иметь размеры 10 000 на 10 000 узлов.
При этом обеспечены широкие возможности по управлению методами
интерполяции со стороны пользователя. В частности, наиболее популярный в
обработке экспериментальных данных кригинг включает возможность
применения различных моделей вариограмм, использования разновидности
алгоритма с трендом, а также учета анизотропии. При расчете поверхности и ее
изображения можно также задавать границу территории произвольной
конфигурации.
В пакете Surfer реализован большой набор дополнительных средств
преобразования поверхностей и различных операций с ними:
➢ вычисление объема между двумя поверхностями;
➢ переход от одной регулярной сетки к другой;
➢ преобразование поверхности с помощью математических операций с
матрицами;
➢ рассечение поверхности (расчет профиля);
➢ вычисление площади поверхности;
➢ сглаживание поверхностей с использованием матричных или сплайн
методов;
➢ преобразование форматов файлов;
➢ целый ряд других функций.
Оценку качества интерполяции можно произвести с помощью
статистической оценки отклонений исходных точечных значений от
результирующей поверхности. Кроме того, для любого подмножества данных
можно произвести статистические расчеты или математические преобразования, в
том числе с использованием функциональных выражений, задаваемых
пользователем.
При построении поверхности в основе работы пакета Surfer лежат
следующие принципы:
1) получение изображения путем наложения нескольких прозрачных и
непрозрачных графических слоев;
2) импорт готовых изображений, в том числе полученных в других
приложениях;
3) использование специальных инструментов рисования, а также нанесение
текстовой информации и формул для создания новых и редактирования старых
изображений.
В пакете Surfer в качестве основных элементов изображения используются
следующие типы карт.
1. Контурная карта (Contour Map). В дополнение к обычным средствам
управления режимами вывода изолиний, осей, рамок, разметки, легенды и пр. есть
возможность создания карт с помощью заливки цветом или различными узорами
отдельных зон. Кроме того, изображение плоской карты можно вращать и
наклонять, использовать независимое масштабирование по осям X и Y.
2. Трехмерное изображение поверхности: Wireframe Map (каркасная карта),
Surface Map (трёхмерная поверхность). Для таких карт используются различные
типы проекции, при этом изображение можно поворачивать и наклонять, используя
простой графический интерфейс. На них можно также наносить линии разрезов,
изолиний, устанавливать независимое масштабирование по осям X, Y, Z, заполнять
цветом или узором отдельные сеточные элементы поверхности.
3. Карта исходных данных (Post Map). Эти карты используются для
изображения точечных данных в виде специальных символов и текстовых
подписей к ним. При этом для отображения числового значения в точке можно
управлять размером символа (линейная или квадратичная зависимость) или
применять различные символы в соответствии с диапазоном данных. Построение
одной карты может выполняться с помощью нескольких файлов.
4. Карта-основа (Base Map). Это может быть практически любое плоское
изображение, полученное с помощью импорта файлов различных графических
форматов: AutoCAD [.DXF], Windows Metafile [.WMF], Bitmap Graphics [.TIF],
[.BMP], [.PCX], [.GIF], [.JPG] и некоторых других. Эти карты могут быть
использованы не только для простого вывода изображения, но также, например,
для вывода некоторых областей пустыми.
С помощью разнообразных вариантов наложения этих основных видов карт,
их различного размещения на одной странице можно получить самые различные
варианты представления сложных объектов и процессов. В частности, очень просто
получить разнообразные варианты комплексных карт с совмещенным
изображением распределения сразу нескольких параметров. Все типы карт
пользователь может отредактировать с помощью встроенных инструментов
рисования самого Surfer.
Все эти возможности представления изображений могут быть очень полезны
при сравнительном анализе влияния различных методов интерполяции или их
отдельных параметров на вид результирующей поверхности.
Полученные графические изображения можно вывести на любое печатающее
устройство, поддерживаемое Windows. Двухсторонний обмен данными и графикой
с другими Windows-приложениями может выполняться также через буфер обмена
Windows.
Запустите программу Surfer, нажав соответствующую иконку.
Откройте файлы, содержащиеся в директории /Surfer_Examples/, изучите
их. Это иллюстрации, поставляемые вместе с программой.
1. Настройка данных
Создайте директорию /Занятие 4/ в директории, где вы работаете. Возьмите
у преподавателя файл с вариантами задания 4. Создайте файл отчета по задаче 4
так, чтобы название содержало Вашу фамилию. Первый листок назовите «data» и
сформируйте данные своего варианта, содержащие 3 колонки – координаты X и Y,
свойство 1. Это будут данные для загрузки в программу Surfer.
На листе «Данные» напишите, как получены данные, и постройте график по
координатам X и Y (учитывая размеры участка 200 на 200 метров), чтобы
посмотреть схему пробоотбора. Напишите в отчете, что это за схема.
2. Работа с программой Vesper 1.6 со своими данными
По аналогии с заданием 3 постройте для своих данных семивариограмму для
расстояний от 0 до 140 метров. Подберите модель, выпишите ее параметры и
обоснуйте в отчете выбор. Картинку семивариограммы с параметрами сохраните в
отчете.
3. Работа с программой Surfer
Запустите программу Surfer, нажав соответствующую иконку.
1) метод обратных расстояний
СОЗДАНИЕ ГРИД-ФАЙЛОВ. Зайдите в меню Grid. Выберите в меню GridData . Укажите путь к файлу Excel со своим вариантом. Файлы Excel относятся к
типам файлов, которые программа Surfer распознает. Появиться окно:
Нажмите ОК. Появиться окно для создания грид- файла.
Это окно служит для создания грид-файла, то есть файла интерполированных
значений, по которым будет строиться картограмма изолиний и поверхность.
Проверьте правильность соответствия признаков, распознанных программой как
координаты и как почвенное свойство.
Нажмите кнопку View Data - появится окно, в котором можно увидеть
загруженные данные. Закройте окно с данными. Можно построить интерполяции
разными методами. Мы будем проводить интерполяцию методом обратных
расстояний, сплайнами и методом кригинг, по-разному задав параметры
вариограммы, а также другими методами.
В разделе Gridding Method (метод интерполяции) выберите Inverse Distance
to a Power (метод обратных расстояний).
В разделе Output Grid File укажите путь к выходному файлу, где будет
записан
грид
(сетка
проинтерполированных
значений),
например,
hum_inv_dist1.grd. В разделе Grid Line Geometry задайте параметры сетки, по
которой будут интерполироваться значения: от 0 до 200 м с расстоянием через 2 м,
всего 101 линия (для каждой из осей X и Y).
Нажмите ОК. Будет создан отчет (Gridding Report) и выдано сообщение, что
грид-файл построен. Нажмите ОК, а отчет можете закрыть не сохраняя. В
дальнейшем уберите соответствующий флажок, и отчет не будет выводиться на
экран.
Выберите опцию Advanced Options. На вкладке General укажите цифру 3
для сглаживания в окошке Smoothing. Постройте грид, где будет в названии указан
коэффициент сглаживания. Например, hum_inv_dist3.grd
Аналогично постройте гриды для коэффициентов сглаживания 6 и 10.
ПОСТРОЕНИЕ ПОВЕРХНОСТЕЙ. Построенные грид-файлы можно
использовать для построения различных карт и поверхностей.
Для построения рисунка в виде ландшафта выберите в меню Map- Surface.
и укажите грид-файл, в котором находиться проинтернолированные
значения. Появится рисунок
Оформите отчет по методу обратных расстояний. Он должен выглядеть
примерно так.
2) Радиальные базисные функции (сплайны)
Создание грид-файла выполните аналогично описанному выше.
В разделе Gridding Method (метод интерполяции) выберите Radial Basic
Function (Радиальные базисные функции, синоним - сплайны). В разделе Output
Grid File укажите путь к выходному файлу, где будет записан грид (сетка
проинтерполированных значений), например, hum_spline.grd. В разделе Grid Line
Geometry задайте параметры сетки, по которой будут интерполироваться
значения: от 0 до 200 м с расстоянием через 2 м, всего 101 линия (для каждой из
осей X и Y).
Выберите опцию Advanced Options. На вкладке General укажите цифру 10
в окошке R2 Parameter.
Нажмите ОК.
По грид-файлу постройте рисунок в виде ландшафта, выбрав в меню MapSurface.
3) методом кригинга с вариограммой по умолчанию
ПОСТРОЕНИЕ СЕМИВАРИОГРАММЫ. Выберите в меню Grid –
Variogram – New. Укажите файл с данными. Откроется меню.
Перейдите на вкладку General и укажите максимальное расстояние для
расчета семивариограммы 140 м.
На этой же вкладке можно при отсутствии стационарности вычесть из
данных тренд 1-го или 2-го порядков. Выпишите в рабочую тетрадь, что можно
менять при построении вариограммы в программе Surfer (по вкладкам Data и
General). – Это при желании.
Скопируйте картинку семивариограммы в отчет.
СОЗДАНИЕ ГРИД-ФАЙЛОВ. Зайдите в меню Grid. Загрузите данные. В
разделе Gridding Method (метод интерполяции) выберите Кригинг. В разделе
Output Grid File укажите путь к выходному файлу, где будет записан грид (сетка
проинтерполированных значений), например, hum_krig.grd. В разделе Grid Line
Geometry задайте параметры сетки, по которой будут интерполироваться
значения: от 0 до 200 м с расстоянием через 2 м, всего 101 линия (для каждой из
осей X и Y).
Нажмите на кнопку Advanced Options (Дополнительные возможности).
Появиться панель задания модели семивариограммы. Там указана модель по
умолчанию.
На этой панели можно задать тип кригинга (Point, Block), построить линию
тренда, задать имя файла для построения карты ошибок кригинга.
По грид-файлу постройте рисунок в виде ландшафта, выбрав в меню Map-
Surface.
4) методом кригинга с подбором модели вариограммы в Surfer
ПОСТРОЕНИЕ СЕМИВАРИОГРАММЫ. Выберите в меню Grid –
Variogram – New. Укажите файл с данными. Откроется меню.
Перейдите на вкладку General и укажите максимальное расстояние для
расчета семивариограммы 140 м.
На этой же вкладке можно при отсутствии стационарности вычесть из
данных тренд 1-го или 2-го порядков. Постройте картинку семивариограммы.
Щелкните 2 раза в части Object Manager (слева) на Variogram. После этого
откроется меню подгонки вариограммы, в котором можно осуществить выбор
модели, оценку ее параметров, просмотреть изменение вариограммы по
расстояниям и многое другое.
Удалите линейную модель, измените Nugget-effect на желаемый. Подберите
сферическую или экспоненциальную модель.
Снова загрузите данные. В разделе Gridding Method (метод интерполяции)
выберите Кригинг. Нажмите на кнопку Advanced Options (Дополнительные
возможности). Появиться панель задания модели семивариограммы.
Удалите (Remouve) модель по умолчанию.
Нажмите на кнопку Get Variogram. Будут заданы параметры вариограммы
построенной ранее.
Сохраните грид-файл, например, под именем hum_krig_varSurf.grd.
По грид-файлу постройте рисунок в виде ландшафта, выбрав в меню MapSurface.
В отчете должна быть семивариограмма и поверхность.
5) методом кригинга с параметрами вариограммы из программы Vesper
Далее постройте следующий грид-файл с использованием модели
семивариограммы, подобранной в программе Vesper. Для этого, дойдя до панели
Kriging Advanced Options, сначала удалите модель по умолчанию, нажав на
кнопку Remove. Затем нажмите кнопку Add (Добавить) и добавьте сначала модель
эффект самородка- Nugget-effect. Укажите его значение как Error. При этом
параметр Micro должен быть равен 0.
Обратите внимание, что значение десятых долей нужно вводить или через
точку, или через запятую в зависимости от настроек компьютера. Это может
послужить причиной ошибок!
Добавьте, соответственно сферическую или экспоненциальную модель.
Укажите параметры модели. Параметр С1 обозначен как Scale, а ранг обозначен
как Lengh (A). Этот грид-файл назовите, например, hum_krig_var_Vesper.grd.
ПОСТРОЕНИЕ КОНТУРНЫХ КАРТ И ПОВЕРХНОСТЕЙ. Построенные
грид-файлы можно использовать для построения различных карт.
Выберите в меню Map- Contour Map - New Contour Map.
Откройте один из созданных грид-файлов (он имеет расширение grd).
Появится карта изолиний. Дважды щелкните по ней, и появится меню, в
котором можно изменять свойства контурной картограммы.
Поставьте галочку для выбора следующих опций: сглаживание контуров
(Smooth Contours), заполнение контуров цветом (Fill Contours), шкала цветов
(Color Scale). Нажмите ОК. Что изменилось в рисунке? На вкладке Levels
уменьшите количество выводимых уровней и поменяйте цвета у некоторых из них.
С помощью вкладки View (вид) поверните рисунок на 90 градусов.
Для построения рисунка в виде ландшафта выберите в меню Map- Surface и
укажите грид-файл, в котором находиться проинтернолированные значения.
Появится рисунок.
Используя меню Карта (Map), постройте для последнего грид-файла:
1. контурную карту (Contour Map).
2. каркасную карту (Wireframe Map)
3. трехмерную поверхность (Surface Map).
. Сделайте подписи.
В меню Карта (Map), постройте карту исходных данных (Post Map).
Поменяйте символ изображения точечных данных в виде красных точек. Наложите
контурные карты на исходные данные и в таком виде перенесите в отчет.
Отчет должен выглядеть примерно так:
Таким образом, в результате выполнения работы должно быть
следующее:
1. Четыре рисунка поверхности, соответствующие методу обратных
расстояний.
2. Один рисунок поверхности, соответствующий радиальным базовым
функциям.
3. Семивариограмма, построенная в программе Surfer по умолчанию; и
соответствующая ей поверхность, построенная методом кригинга.
4. Семивариограмма, с моделью, подобранной в программе Surfer; и
соответствующая ей поверхность, построенная методом кригинга.
5. Семивариограмма из программы Vesper с параметрами вариограммы. ; и
соответствующая ей поверхность, построенная методом кригинга, а также
две карты изолиний без и с исходными точками и каркасная карта.
Построение поверхностей и контурных карт для файла kelso.txt
Откройте файл kelso.txt с помощь программы Excel, добавьте первую строку
заголовков: X, Y, pH, Gl. Сохраните файл в формате Excel с расширением xlsx.
Для крупной пыли (Pl) постройте вариограмму и подберите модель,
интерполяцию постройте методом обратных расстояний или сплайнами (почему?),
сохраните картинки на листе Excel.
Для содержания глины (Gl) постройте вариограмму, подберите сферическую
модель, интерполяцию постройте методом кригинга. Сравните с результатами,
полученными в задании 3.
Схема пробоотбора для файла kelso.txt выглядит следующим образом:
Схема пробоотбора для файла kelso.txt
360400
360300
360200
360100
360000
359900
359800
1302350 1302400 1302450 1302500 1302550 1302600 1302650 1302700 1302750 1302800 1302850
Видно, что схема занимает не всю прямоугольную область. В программе
Surfer есть возможность построить интерполяцию только на область,
определяемую пробоотбором. Для этого в нижнем левом углу нужно поставить
галочку.
На рисунках ниже показаны результаты интерполяции данных по крупной
пыли с помощью метода радиальных базисных функций: А) галочка не поставлена;
Б) с галочкой.
А)
Б)
Скачать