Найти в Дзене

Ассоциации LAS 3.0 (часть 6)

Оглавление

В прошлой публикации была описана структура формирования многомерных массивов LAS 3.0. В этой публикации продолжу описание в альтернативной интерпретации.

Формат LAS 3.0 определяет несколько механизмов ассоциации для обработки следующих типов ситуаций. Ассоциации позволяют связать один фрагмент с другим.

Достаточно часто одна часть информации в файле LAS напрямую связана с другой частью данных. Типичным примером является значение плотности матрицы (SAND, LIME, DOLO), которое использовалось для преобразования данных объёмной плотность в плотность пористости. Чтобы связать их, необходимо просто добавить соответствующую мнемонику в конец строки данных параметра или определения столбца (после нового разделителя), которая относится к ним. Например:

Строка параметров в разделе ~Parameter:

Пример строки в разделе ~Parameter.
Пример строки в разделе ~Parameter.

И строка определения канала в разделе ~Curve, которая зависит от MDEN:

Пример строки в разделе определения.
Пример строки в разделе определения.
В любом случае НИКОГДА нельзя указывать круговой набор ассоциаций. То есть мнемоника ассоциации, используемая в одной строке данных параметра, не должна иметь в качестве параметра ассоциации мнемонику, найденную в этой же строке. Например ниже указан НЕПРАВИЛЬНЫЙ вариант, MDEN указывает на DPHI, а DPHI указывает на MDEN.
Пример неправильного описания ассоциаций.
Пример неправильного описания ассоциаций.

Следующие примеры являются лишь рекомендацией относительно того, что можно сделать с помощью ассоциаций. Следует обратить внимание, что некоторые мнемоники, показанных в примерах, являются зарезервированными мнемониками формата LAS 3.0, которые предназначены для использования. (более детальная информация в приложении).

Сохранение нескольких прогонов.

Чтобы указать несколько наборов любых параметров раздела данных параметра, которые могли быть получены более чем из одного запуска регистрации/логирования, LAS 3.0 определяет следующий метод:

Пример описания нескольких наборов данных.
Пример описания нескольких наборов данных.

Значение должно быть равно количеству прогонов, описываемых в файле. Если описывается один прогон, нет необходимости включать или использовать параметр или ассоциации RUNS или RUN[]. Параметр RUN должен указывать номер спуска. Параметры RUN[] (одна строка на спуск) определяет номер спуска для каждого запуска регистрации. Теперь для любого параметра в разделе данных параметра, который связан с каждым запуском, надо добавить соответствующее имя параметра RUN[] после символа разделителя | (вертикальная черта).

Указание номера рейса в параметре размера долота.
Указание номера рейса в параметре размера долота.

При этом указывается, что первое значение BS применяется к рейсу, найденному в значении параметра RUN[1], найденному в другом месте файла. Теперь, например, в один раздел ~Parameter можно включить два и более полных набора параметров, специфичных для указанного рейса.

Идентификация матрицы канала данных.

Часто существуют критические примеры, связанные с определёнными типами каротажных данных, такими как матрица (SAND, LIME, DOLO), которая использовалась для расчета плотности или нейтронной пористости, или применяемые настройки коррекции окружающей среды.

Это особенно становится важно, если существует более одного канала пористости одного типа.

Необходимо формировать строки данных параметров, описывающих каждое значение для каждого применимого параметра. В примере ниже определяются несколько наборов параметров матрицы для нейтронных каналов, каналов плотности и звуковой пористости:

Пример определения нескольких наборов параметра.
Пример определения нескольких наборов параметра.

Теперь в разделе определения столбца, где определён каждый канал, надо добавить соответствующее имя параметра в качестве параметра ассоциации:

Пример указания ассоциаций в разделе описания кривых.
Пример указания ассоциаций в разделе описания кривых.

Благодаря этому понятно какой канал на какой матрице запускается.

Зонирование параметров.

Ассоциации также используются для параметров зонирования. Зонирование позволяет указать, что определённые параметры имеют определённое значение в определённой зоне (например интервал глубины) или что определённые каналы данных в разделе "Данные столбца" имеют определённые значения входных параметров в определённых интервалах. Необходимо определить параметры, которые определяют интервалы зоны. Значение параметров будет иметь несколько значений разделённых символом DLM, указывающим начальную и конечную глубину этой зоны.

В указанном ниже примере матричные параметры для каналов Neutron, Density и Sonic имеют разные значения на нескольких интервалах. С начала определяются параметры, в которых перечислены глубины каждой зоны для каждого задействованного параметра:

Пример использования разных значений для нескольких каналов.
Пример использования разных значений для нескольких каналов.

После этого определяются параметры, в которых перечислены различные значения параметров в каждом интервале глубин или зоне. Также следует добавить в качестве ассоциаций параметры, содержащие интервал глубины, который применяется к каждому значению параметра.

Пример связи параметра с интервалом.
Пример связи параметра с интервалом.

Это связывает каждое значение параметра с интервалом, в течение которого оно применяется. В качестве последнего необязательного шага обычно добавляется имя каждого параметра матрицы в качестве связанного параметра в каждую строку определения столбца. В примере указанном ниже приведён фрагмент раздела ~Curve, который показывает, что канал NEUT имеет два связанных значения MATR для двух разных зон, в то время как DENS и SPOR имеют только одно значение матрицы, которое применяется ко всему файлу.

Пример фрагмента раздела ~Curve.
Пример фрагмента раздела ~Curve.

Связи раздела данных столбца и определения столбца.

LAS 3.0 определяет несколько новых типов данных, которые можно хранить. Чтобы помочь понять, какой раздел определения столбца относится к какому разделу данных столбца, в каждой строке заголовка данных столбца используется схема ассоциации, чтобы четко указать, к какому разделу определения столбца он принадлежит.

Добавление пользовательских данных и разделов.

Пользователи могут сами определить и включать в свои собственные данные в файл LAS версии 3.0. Для начала пользователю надо решить, как его данные соотносятся с ранее определёнными типами данных для LAS 3.0. Если они соответствуют уже существующему типу данных, они должны быть помещены в этот тип раздела. Обычно добавляются разделы в существующий раздел, используя расширения индекса [1], [2], а не создаются собственные.

Если добавляемые данные не относятся ни к одному из предопределённых типов данных, то могут быть определены новые разделы. Новые разделы данных столбца должны сопровождаться соответствующим разделом определения столбца. При желании можно определить соответствующий раздел данных параметров, который содержит отдельные элементы данных, связанные с теми, которые хранятся в новом разделе данных столбца. Эти разделы должны соответствовать тем же правилам именования и содержания разделов, что и все разделы "Данные параметров", "Определение столбца", "Данные столбца":

~User_Data
~User_Definition
~User_Parameter

Разделы автономных параметров также можно использовать для несвязанных одномерных данных или данных одного элемента. При синтезе файла надо убедится, что данные, размещённые в этих разделах, не принадлежат ни к одному из других типов данных, хранящихся в файле.

Пример файла формата LAS 3.0 можно скачать тут, или тут. Так же ссылку на формат версии 3.0 можно найти тут.

Дополнительная информация.

В ASCII файлах операционных систем Windows и MAC используются символы завершения строки, которые на самом деле представляют собой последовательность символов ASCII с кодом 13 и затем с кодом 10, которые называются CRLF (Carriage return & Line feed). В системах UNIX используется только символ ASCII с кодом 10, называемый LF (Line feed). Подразумевается что файл созданный в какой-то системе продолжит использоваться в такой же системе. Это надо помнить, либо воспользоваться бесплатными/условно бесплатными конверторами при переносе файлов в другие системы. Более предметно можно почитать на страничке продуктов канадского сообщества каротажников.