^  Оглавление

Примеры работы с программой

Здесь представленны конкретные примеры работы с UNEX. Их можно модифицировать или сразу использовать для своих целей. Основы работаты с программой описаны в соответствующем разделе.
Список примеров:
  1. Получение кривых интенсивности рассеяния из изображений дифракционных картин газовых образцов
  2. Оценка длин волн электронов по кривым интенсивности газовых стандартов
  3. Простой пример электронографического структурного анализа


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

Для начала нужно выполнить некоторые действия:
Рис. 1: "Очистка" изображения дифракционной картины от "мусора".

Всего нужно выполнить несколько действий: ввести базовую информацию, и, в частрости, ввести имя файла изображения. Далее нужно ввести калибровочную кривую и выполнить команду IMAGE=INTSCAN.
В итоге необходимо запустить UNEX с файлом следующего содержания (вместе с командами и данными также показаны комментарии):
; ----------------Начало файла----------------
; Эта команда вводит базовую информацию
BASE=BASE,<BASE>,</BASE> 

; Команда ввода калибровочной кривой сканера
WEDGE=INPUT,<WED>,</WED> 

; Запуск обработки изображения
IMAGE=INTSCAN,f1.tif

; Остановка программы
STOP 


; Поле с базовой информацией
<BASE> 
picfiles=f1.tif 
</BASE> 


; Поле с информацией о изображении
<f1.tif> 
; Это стартовые значения координат центра
Xc=752 
Yc=693 

; Это значения разрешения
XResolution=299.2 
YResolution=299.2 

; Расстояние сопло-пластинка
NozToPlate=187.0

; Диапазон расстояний до центра дифракционной
; картины в котором будет обработано изображение
IntRfr=12.5 
IntRto=44.0 

; Значение длины волны электронов.
; Для газового стандарта здесь может быть любое число,
; для исследуемого вещества - конкретное значение 
; (см. пример "Оценка длин волн электронов...").
IntLambda=0.05 

; Шаг по шкале s, с которым будут получены 
; точки интенсивности
IntStep=0.2
</f1.tif> 


; Поле с калибровочной кривой
<WED> 
      0.050        0.049  
      0.200        0.142  
      0.330        0.225  
      0.460        0.311  
      0.610        0.404  
      0.770        0.508  
      0.920        0.599  
      1.060        0.685  
      1.190        0.764  
      1.330        0.857  
      1.480        0.950  
      1.630        1.039  
      1.770        1.130  
      1.930        1.219  
      2.070        1.304  
      2.200        1.383  
      2.360        1.464  
      2.500        1.527  
      2.620        1.522  
</WED> 
; ----------------Конец файла----------------
В результате работы программы создается выходной файл с результатами. Среди прочей информации выдается таблица значений функции полной интенсивности рассеяния в виде:
  Intensity>
  -----------------------------------------
   S, A^(-1)   |  Intensity  |    Error    
  -----------------------------------------
    8.40000000    0.29934531    0.00010416
    8.60000000    0.29790075    0.00010324
    8.80000000    0.29745948    0.00010232
    9.00000000    0.29665842    0.00010008
    9.20000000    0.29522185    0.00009818
    9.40000000    0.29275019    0.00009582
    9.60000000    0.28910596    0.00009367
    9.80000000    0.28434282    0.00009219
   10.00000000    0.27948140    0.00009092
   10.20000000    0.27517912    0.00008992
   10.40000000    0.27100344    0.00008861
   10.60000000    0.26784148    0.00008724
   ...........    ..........    ..........
   ...........    ..........    ..........


Оценка длин волн электронов по кривым интенсивности газовых стандартов

Чтобы проводить эту процедуру необходимо, в первую очередь, получить кривые интенсивности газовых стандартов (см. пример "Получение кривых интенсивности..."). Если есть несколько кривых интенсивности, то нужно решить в каком порядке они будут обрабатываться. Команда STANDART= позволяет обрабатывать одновременно несколько кривых интенсивности газовых стандартов при условии что они получены в экспериментах с одной и той же секторной функцией. Последовательность действий простая: ввести кривые интенсивности с помощью команды INT= (см. раздел ввод кривых интенсивности) и выполнить команду STANDART=. Для этого можно составить и выполнить файл следующего содержания:
; ----------------Начало файла----------------
BASE=BASE,<BASE>,</BASE>
INT=INT,<INT>,</INT>

; Обработаем одновременно две кривые.
STANDART=1-1,1-2

STOP 


<BASE>
; Максимальное количество итераций поставим 40.
StdMaxIter=40
</BASE>

<INT> 
; Здесь в описании кривой интенсивности укажем,
; что она получена при первичной обработке со значением
; Lambda=0.05 (см. пример "Получение кривых интенсивности...").
; С помощью ключа NtoP указываем длину расстояния сопло-пластинка в мм.
; Ключ Std указывает тип газового стандарта (в данном примере - 
; тетрахлористый углерод), а StoP - расстояние сектор-пластинка в мм.
INT1 Lam=0.05  NtoP=193.815 Std=CCl4 StoP=3.0
    8.46000000    0.37675205   
    8.52000000    0.37839953   
    8.58000000    0.38003374   
    8.64000000    0.38213414   
    ..........    ..........
    ..........    ..........
; В этом примере вторая кривая имеет такие же параметры как и перваю.
; Это только частны случай, в общем случае все кривые 
; могут иметь разные параметры.
INT1 Lam=0.05  NtoP=193.815   Std=CCl4   StoP=3.0
    8.46000000    0.30601274   
    8.52000000    0.30725438   
    8.58000000    0.30929312   
    8.64000000    0.31025214   
    ..........    ..........
    ..........    ..........
</INT> 
; ----------------Конец файла----------------
В результате работы программы будет выдана таблица, например:
 Final info about each curve:
 ------------------------------------------------------------------------------
    (1-1): [ CCl4 ]: Lam=0.050084 (Rs=8.0474) (Ri=0.1803) (mt=25.1515) (bt=27.0991) 
    (1-2): [ CCl4 ]: Lam=0.050078 (Rs=5.0711) (Ri=0.2447) (mt=20.1954) (bt=22.4217) 
 ------------------------------------------------------------------------------
Здесь значения длин волн, найденных по каждой кривой обазначены после Lam=, т.е. для кривой (1-1) получено значение 0.050084, а для кривой (1-2) - 0.050078 ангстрем.

Дополнительно про работу команды STANDART= можно почитать в соответствующем разделе первичной обработки.


Простой пример электронографического структурного анализа

Здесь приведен пример минимизации электронографического функционала в независимых геометрических параметрах на примере молекулы тетрахлористого углерода. Для выполнения этой задачи нужно ввести базовую информацию и информацию о молекуле. Далее нужно задать геометрию молекулы в виде z-матрицы и ввести среднеквадратичные амплитуды и колебательные поправки. После это нужно заставить программу вычислить все необходимые g-функции и ввести кривые интенсивности. Чаще всего g-функции лучше вычислять после ввода кривых интенсивности.
Теперь нужно выполнить главные действия - цикл поочередных уточненений линий фона на используемых кривых интенсивности и минимизации электронографического функционала. Таких итераций обычно проводится несколько для самосогласования. Обратите внимание на список варьирующихся параметров, группы которых задаются при вводе z-матрицы, амплитуд, а кроме того обычно в качестве параметров выступают масштабные множители.

Выполним файл следующего содержания:
; ----------------Начало файла----------------
; Ввод базовой информации
BASE=BASE,<BASE>,</BASE>

; Ввод z-матрицы
ZMATRIX=mol1,FREEZM,<ZMAT>,</ZMAT>

; Ввод амплитуд и колебательных поправок
AMPLITUDES=mol1,FREEU,<AMPLITUDES>,</AMPLITUDES>

; Расчет g-функций
GF=mol1,AUTO,0.0500

; Ввод кривых интенсивности
INT=INT,<INT>,</INT>

; Уточнение линии фона и вычислении функций sM(s)
; для кривых 1-1 и 2-1.
BGL=1-1,2 
BGL=2-1,2 
; Минимизация
MINIMIZE=GEDINT,1-1,2-1 

; Вторая итерация.
BGL=1-1,2 
BGL=2-1,2 
MINIMIZE=GEDINT,1-1,2-1 

; Остановка программы
STOP 


; Поле базовой информации.
<BASE> 
 molecules mol1 
 jobname ccl4 
</BASE> 

; Поле молекулярной информации.
<mol1> 
 formula CCl4 
</mol1> 

; Поле z-матрицы.
<ZMAT> 
Cl                                       
C    1  R1                               
Cl   2  R1      1  A1                     
Cl   2  R1      1  A1      3  A1      -1 
Cl   2  R1      1  A1      3  A1       1 
  
  Variable:        Value:        Group:
     R1          1.6724            2
     A1        109.47122063
</ZMAT> 


; Поле амплитуд и колебательных поправок.
<AMPLITUDES>
; 
;A1  A2     Comment       U        Corr         A       G 
; 
C2   Cl1    1.7925     0.05485     0.00      0.00000    3 
C2   Cl3    1.7925     0.05485     0.00      0.00000    3 
C2   Cl4    1.7925     0.05485     0.00      0.00000    3 
C2   Cl5    1.7925     0.05485     0.00      0.00000    3 
Cl1  Cl3    2.9271     0.06844     0.00      0.00000    4 
Cl1  Cl4    2.9271     0.06844     0.00      0.00000    4 
Cl1  Cl5    2.9271     0.06844     0.00      0.00000    4 
Cl3  Cl4    2.9271     0.06844     0.00      0.00000    4 
Cl3  Cl5    2.9271     0.06844     0.00      0.00000    4 
Cl4  Cl5    2.9271     0.06844     0.00      0.00000    4 
</AMPLITUDES>
 
 
; Поле кривых интенсивности 
<INT>
; Стартовое значение масштабного множителя - 0.5
INT1 Scale=0.5
 3.000000 0.854927 
 3.200000 0.853378 
 3.400000 0.843744 
 3.600000 0.845387 
 3.800000 0.870688 
INT2  Scale=0.5 
  9.800000 0.836940 
 10.000000 0.819714 
 10.200000 0.811062 
 10.400000 0.813049 
 10.600000 0.824458 
 10.800000 0.841284 
</INT> 
; ----------------Конец файла----------------
В результате работы команды MINIMIZE в выходном файле создается таблица, которая содержит основную информацию о значениях параметров. Ее пример представлен ниже:
 Estimated parameters info: 
 -----------------------------------------------------------------------------
  Group   Def.   Old Value     Value     3*Sigma    Error,%  d(X^2)/dA    Pr  
 -----------------------------------------------------------------------------
    5    Scale    0.522542    0.501825    0.005855   1.16667   0.00000  0.9983
    6    Scale    0.508278    0.494911    0.009986   2.01776  -0.00000  0.9949
    2        R    1.772319    1.772379    0.000422   0.02382  -0.00000  1.0000
    3        U    0.058530    0.054884    0.001616   2.94383   0.00000  0.9893
    4        U    0.071774    0.068347    0.000967   1.41532   0.00000  0.9975
 -----------------------------------------------------------------------------
Остальные данные можно получить используя команду PRINT.