sim-trhepd-rheed solver¶
sim-trhepd-rheed is a Solver that uses `sim-trhepd-rheed`_ to calculate the diffraction rocking curve from the atomic position \(x\) and returns the deviation from the experimental rocking curve as \(f(x)\).
Preparation¶
You will need to install `sim-trhepd-rheed`_ beforehand.
Download the source code from the official
sim-trhepd-rheedwebsite.Move to
sim-trhepd-rheed/srcfolder and makebulk.exeandsurf.exeby usingmake.
Before running py2dmat, run bulk.exe to create the bulk data.
The surf.exe is called from py2dmat.
Input parameters¶
Input parameters can be specified in subcsections config, post, param, reference in solver section.
[config] section¶
surface_exec_fileFormat: string (default: “surf.exe”)
Description: Path to
sim-trhepd-rheedsurface reflection solversurf.exe.surface_input_fileFormat: string (default: “surf.txt”)
Description: Input file for surface structure.
bulk_output_fileFormat: string (default: “bulkP.b”)
Description: Output file for bulk structure.
surface_output_fileFormat: string (default: “surf-bulkP.s”)
Description: Output file for surface structure.
calculated_first_lineFormat: integer (default: 5)
Description: One of the parameters that specifies the range of output files to be read, calculated by the solver. This parameter specifies the first line to be read.
calculated_last_lineFormat: integer (default: 60)
Description: One of the parameters that specifies the range of output files to be read, calculated by the solver. This parameter specifies the last line to be read.
row_numberFormat: integer (default: 8)
Description: One of the parameters that specifies the range of output files to be read, calculated by the solver. This parameter specifies the column to be read.
[post] section¶
normalizationFormat: string (“TOTAL” or “MAX”, default: “TOTAL”)
Description: This parameter specifies whether the R-value is normalized by the sum of the whole values or by the maximum value.
Rfactor_typeFormat: string (“A” or “B”, default: “A”)
Description: This parameter specifies how to calculate the R-factor. “A” means the normal method, “B” means Pendry’s R-factor is used.
omegaFormat: float (default: 0.5)
Description: This parameter specifies the half-width of convolution.
[param] section¶
string_listFormat: list of string. The length should match the value of dimension (default: [“value_01”, “value_02”]).
Description: List of placeholders to be used in the reference template file to create the input file for the solver. These strings will be replaced with the values of the parameters being searched for.
degree_maxFormat: float (default: 6.0)
Description: Maximum angle (in degrees)
[reference] section¶
pathFormat: string (default:
experiment.txt)Description: Path to the experimental data file.
firstFormat: integer (default: 1)
Description: One of the parameters that specify the range of experimental data files to be read. This parameter specifies the first line of the experimental file to be read.
lastFormat: integer (default: 56)
Description: One of the parameters that specify the range of experimental data files to be read. This parameter specifies the last line of the experimental file to be read.
Reference file¶
Input template file¶
The input template file template.txt is a template for creating an input file for surf.exe.
The parameters to be moved in py2dmat (such as the atomic coordinates you want to find) should be replaced with the appropriate string, such as value_*.
The strings to be used are specified by string_list in the [solver] - [param] section of the input file for the solver.
An example template is shown below.
2 ,NELMS, -------- Ge(001)-c4x2
32,1.0,0.1 ,Ge Z,da1,sap
0.6,0.6,0.6 ,BH(I),BK(I),BZ(I)
32,1.0,0.1 ,Ge Z,da1,sap
0.4,0.4,0.4 ,BH(I),BK(I),BZ(I)
9,4,0,0,2, 2.0,-0.5,0.5 ,NSGS,msa,msb,nsa,nsb,dthick,DXS,DYS
8 ,NATM
1, 1.0, 1.34502591 1 value_01 ,IELM(I),ocr(I),X(I),Y(I),Z(I)
1, 1.0, 0.752457792 1 value_02
2, 1.0, 1.480003343 1.465005851 value_03
2, 1.0, 2 1.497500418 2.281675
2, 1.0, 1 1.5 1.991675
2, 1.0, 0 1 0.847225
2, 1.0, 2 1 0.807225
2, 1.0, 1.009998328 1 0.597225
1,1 ,(WDOM,I=1,NDOM)
In this case, value_01, value_02, and value_03 are the parameters to be moved in py2dmat.
Target file¶
This file (experiment.txt) contains the data to be targeted.
The first column contains the angle, and the second column contains the calculated value of the reflection intensity multiplied by the weight.
An example of the file is shown below.
0.100000 0.002374995
0.200000 0.003614789
0.300000 0.005023215
0.400000 0.006504978
0.500000 0.007990674
0.600000 0.009441623
0.700000 0.010839445
0.800000 0.012174578
0.900000 0.013439485
1.000000 0.014625579
...
Output file¶
For sim-trhepd-rheed, the files output by surf.exe will be output in the Log%%%%% folder under the folder with the rank number.
This section describes the own files that are output by this solver.
stdout¶
It contains the standard output of surf.exe.
An example is shown below.
bulk-filename (end=e) ? :
bulkP.b
structure-filename (end=e) ? :
surf.txt
output-filename :
surf-bulkP.s
RockingCurve.txt¶
This file is located in the Log%%%%% folder.
The first line is the header, and the second and subsequent lines are the angle, convoluted calculated/experimental values, normalized calculated/experimental values, and raw calculated values in that order.
An example is shown below.
#degree convolution_I_calculated I_experiment convolution_I_calculated(normalized) I_experiment(normalized) I_calculated
0.1 0.0023816127859192407 0.002374995 0.004354402952499057 0.005364578226620574 0.001722
0.2 0.003626530149456865 0.003614789 0.006630537795012198 0.008164993342397588 0.003397
0.3 0.00504226607469267 0.005023215 0.009218987407498791 0.011346310125551366 0.005026
0.4 0.006533558304296079 0.006504978 0.011945579793136154 0.01469327865677437 0.006607
0.5 0.00803056955158873 0.007990674 0.014682628499657693 0.018049130948243314 0.008139
0.6 0.009493271317558538 0.009441623 0.017356947736613827 0.021326497600946535 0.00962
0.7 0.010899633015118851 0.010839445 0.019928258053867838 0.024483862338931763 0.01105
...