^  Оглавление

Работа с кривыми интенсивности рассеяния электронов

Кривые интенсивности - главный источник экспериментальной информации для электронографического структурного анализа, поэтому работе с ними уделяется большое внимание. Основные операции с кривыми полной и молекулярной интенсивности это: проведение линий фона различными способами, усреднение кривых, построение их Фурье-образов, использование для определения длины волны рассеянных электронов и секторной функции.


Проведение линий фона

Для проведения модельно-завасимой линии фона используется команда BGL. При этом применяются кубические сплайны [3] или полиномы любых степеней, в зависимости от значения ключа bgltype в поле BASE. Если этот ключ не задан, то по умолчанию используются кубические сплайны. Использовать полиномы можно, но не рекомендуется, так как при больших степенях обусловленность задачи аппроксимации обыкновенными полиномами очень плохая. Так как используется модельно-зависимый фон, то его проведение с помощью команды BGL возможно только если электронографическая модель полностью задана (т.е. если возможен расчет теоретической кривой sM(s)) и введены кривые полной интенсивности рассеяния. Это означает, что нельзя использовать команду BGL до того как в программу будут введены: интенсивности, геометрии всех молекул, амплитуды всех молекул, g-функции всех молекул и потенциалы молекул с динамической моделью.
Синтаксис:
BGL=i-j,....,k.....
Где: Допускается в одной команде BGL задавать много кривых интенсивности, которые будут обработаны последовательно. Например:
BGL=1-1,2,1-2,3,2-1,4
Эта строка равносильна трем строкам:
BGL=1-1,2 
BGL=1-2,3 
BGL=2-1,4 
Можно также число точек перегиба (если фон - сплайн) или степень полинома задавать один раз для всех кривых, например так:
BGL=1-1,1-2,1-3,5
Это команда на проведение трех линий фона с пятью точками перегиба (если используется сплайн), что равносильно трем отдельным командам:
BGL=1-1,5 
BGL=1-2,5 
BGL=1-3,5 
Вообще, количество чисел обозначающих число точек перегиба (или степень полинома) может быть любым больше нуля. Если этих чисел меньше чем число кривых, то для части заданий будет использовано последнее число. Например:
BGL=1-1,2,1-2,3,1-3
равносильно строкам:
BGL=1-1,2 
BGL=1-2,3 
BGL=1-3,3 

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

Технология исправления линии фона по разностной кривой sM(s) доступна по команде IBGL. Команда IBGL делает следующее:
  1. Строит при помощи кубического сплайна модельно-зависимый мультипликативный фон (тоже что и в команде BGL) с количеством точек перегиба не большим чем задано в команде IBGL.
  2. Используя полученный фон, вычисляет экспериментальную sM(s).
  3. Получает разностную кривую (sM(s)-Scale*TsM(s)).
  4. Сглаживает кубическим сплайном разностную кривую. Количество точек перегиба на этом сплайне - не больше чем Nibgl(ключ поля BASE).
  5. При помощи сглаженной разностной кривой исправляет экспериментальную кривую sM(s).
Синтаксис такой же как у команды BGL. В отличие от команды BGL, на команду IBGL не влияет ключ bgltype в поле BASE: эта линия фона всегда проводится при помощи сплайнов. Для команды IBGL важен ключ Nibgl в поле BASE, который определяет количество точек перегиба на сплайне, аппроксимируещем разностную кривую sM(s).


Проведение линий фона с использованием секторной функции

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

Синтаксис команды SBGL такой же как и у команды BGL:
SBGL=i-j,....,k.....
Где: Вот простой пример использования команды SBGL:
SBGL=1-1,3 
Важно отметить, что при проведении линий фона таким способом, масштабные множители Scale принимают значения, близкие к временам экспозиции, но в программе UNEX экспериментальные кривые sM(s) делятся на время экспозиции заранее на этапе проведения линии фона.

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


Усреднение различных кривых

Использовать экспериментальную электронографическую информацию "по максимуму" можно двумя способами: либо проводить минимизацию электронографического функционала одновременно по всем доступным кривым со всех расстояний сопло-пластинка, либо второй вариант - усреднять кривые, полученные для каждого расстояния сопло-пластинка и работать уже с усредненными кривыми. У обоих подходов есть свои плюсы и минусы, но обычно используют усредненные кривые так как это быстрее с вычислительной точки зрения. Поэтому усреднение кривых - распространенная процедура в процессе первичной обработки и/или структурного электронографического анализа. Усреднять можно интенсивности и экспериментальные кривые sM(s) с помощью команды AVERAGE. Ниже рассмотрены оба варианта. Но есть некоторые особенности, характерные для обоих вариантов:
  1. Для усредненной кривой программа организует новую категорию, в которой эта кривая всегда под первым номером. Т.е. если например мы ввели в программу три категории кривых и что-то усредняем, то усредненная кривая будет в четвертой категории. В любом случае программа напишет в лог какая именно кривая является усредненной.
  2. Для того чтобы кривые удачно усреднились они не обязаны иметь одинаковое количество точек и сами аргументы точек не обязаны совпадать. Главное, чтобы все усредняемые кривые имели хоть какую-то общую область перекрывания. Если какая-либо кривая не имеет общей части с другими, то она просто игнорируется.
  3. Условие из предыдущего пункта определяет способ усреднения: среди усредняемых кривых все кривые подгоняются под первую крувую умножением на коэффициенты и только потом берется среднее. Т.е. это не просто среднее арифметическое!
Усреднение интенсивностей выполняется командой:
AVERAGE=INT,i-j,i-k,i-l,....
Допустимо усреднение кривых с одного расстояния сопло-пластинка. Пример:
AVERAGE=INT,1-1,1-2,1-3
Здесь усредняются три кривые интенсивности из первой категории. Результирующая кривая будет доступна в 2-1 (если до этого не существовало второй категории).

Усреднение экспериментальных sM(s) выполняется командой:
AVERAGE=SMS,i-j,i-k,i-l,....
Усреднение кривых sM(s) с одного расстояния. Все особенности команды те же, что и в случае AVERAGE=INT, за некоторыми исключениями:
  1. Для того чтобы усреднять экспериментальные кривые sM(s), их нужно получить. Если они не вводятся из вне, то получение эксп. sM(s) предполагает проведение линий фона. В программе реализовано модельно-зависимое проведение линий фона и это значит что для операции усреднения кривых sM(s) нужна модель. Качество модели слабо влияет на результаты усреднения, главное чтобы усредняемые кривые sM(s) были получены максимально схожими способами: в рамках одной модели (с одинаковыми параметрами) и линии фона должны иметь одинаковое количество точек перегиба (для сплайнов) или одинаковые степени (для полиномов).
  2. После усреднения выводятся значения экспериментального R-фактора.
Экспериментальный R-фактор очень полезный критерий качества эксперимента. Полный Экспериментальный R-фактор вычисляется по формуле:
R=SS(sM(s)ij - sMav(s)j)^2/SS(sMav(s)j)^2, 
где: SS - двойная сумма по всем точкам всех кривых,
     sM(s)ij  - j-ая точка i-ой кривой эксп. sM(s),
     sMav(s)j - j-ая точкая усредненной кривой sM(s).
Аналогично вычисляются частичные R-факторы для каждой кривой, и усредненный экспериментальный R-фактор. Программа вычисляет все типы R-факторов.

По частичному экспериментальному R-фактору можно количественно определить насколько хороша каждая из кривых sM(s) и нужно ли выбрость какую-либо из них. Имея значение полного экспериментального R-фактора, можно знать до какого предела можно улучшать модель и подгонять под эксперимент: нет смысла понижать структурный R-фактор ниже полного экспериментального R-фактора. Т.е. если у нас экспериментальный R-фактор, к примеру, равен 5% и мы в структурном анализе каким-либо образом добились значения структурного R-фактора равного 3%, то можно сказать:
  1. Полные ошибки оцениваемых параметров (не МНК!) будут заведомо занижены.
  2. Параметры, полученные в нашей модели ничуть не ближе к истинным, по сравнению с теми, которые мы бы получили в модели, которая дает структурный R-фактор 4.9%.
  3. Мы пытаемся смоделировать то, что НЕ воспроизводится экспериментом. Есть ли в этом смысл?

Построение фурье-образов кривых sM(s)

Расчет кривой радиального распределения выполняется с помощью команды FUR. При этом используется интегрирование по Ридбергу. Неравномерный шаг кривых sM(s) допустим. Пример:
FUR=1-1
В этом примере расчет экспериментальной кривой будет основан на первой sM(s) из первой категории. Можно строить кривые радиального распределения используя сразу несколько экспериментальных кривых sM(s). Для этого все эти кривые нужно перечислить в команде FUR, например:
FUR=1-1,2-1,3-1
Ключем FurType в поле BASE можно управлять способом построения кривой радиального распределения. Доступны три варианта:
  1. old
    Экспериментальная и теоретическая кривые sM(s) умножаются на экспоненту exp(-b*S^2) (b определяется из соотношения exp(-b*Smax^2) = 0.1) и интегрируются в пределах Smin-Smax.
  2. classic
    Экспериментальная кривая sM(s) в интервале 0-Smin дополняется теоретической кривой. Далее обе кривые умножаются на экспоненту (как в варианте old) и интегрируются в пределах 0-Smax.
  3. modern
    Экспериментальная кривая sM(s) дополняется с двух сторон теоретической кривой. При этом минимальное и максимальное значение s определяется ключами GFsmin и GFsmax в поле BASE (0.0 и 60.0 по умолчанию). Обе кривые sM(s) - экспериментальная и теоретическая - делятся на g-функцию терма с максимальным вкладом в дифракционную картину и интегрируются в пределах GFsmin-GFsmax.
Если в поле BASE не стоит ключ FurMultR=0, то во всех типах построения кривых радиального распределения интеграл умножается на r, что более соответствует соотношению вкладов разных термов в дифракционную картину, так как напрямую выражает плотности вероятностей распределения пар атомов. Имейте в виду, что разностная кривая при этом тоже умножена на r, поэтому увеличена по сравнению с традиционным вариантом (без умножения на r) и более чувствительна к несогласованию теории с экспериментом! Такая ситуация принята по умолчанию. Если нужно избежать умножения на r, то в поле BASE нужно поставить FurMultR=0.