Difference between revisions of "Yanera"
KevinYager (talk | contribs) (→Example) |
KevinYager (talk | contribs) (→Example Input File) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
− | ==Example== | + | * '''Yanera''' ("Yet Another NEutron Reflectivity Analyzer") is a [[software]] package for calculating [[reflectivity]] curves. It provides an open-source C++ implementation of the [[Parratt formalism]]. Written by Thad Harroun (Brock University), with minor contributions from [[Kevin Yager]]. |
+ | ** [http://www.physics.brocku.ca/~tharroun/yanera/index.html Official site.] | ||
+ | |||
+ | ==Example Input File (2007 format)== | ||
<source lang="xml"> | <source lang="xml"> | ||
<?xml version="1.0"?> | <?xml version="1.0"?> | ||
Line 44: | Line 47: | ||
</model> | </model> | ||
</parratt> | </parratt> | ||
+ | |||
+ | </source> | ||
+ | |||
+ | ==Example Input File (2008 format)== | ||
+ | <source lang="xml"> | ||
+ | <?xml version="1.0" encoding="ISO-8859-1"?> | ||
+ | <!DOCTYPE yanera SYSTEM "yanera.dtd"> | ||
+ | <yanera> | ||
+ | <!-- ====================================================================== --> | ||
+ | <miscellaneous_section> | ||
+ | <write_results>YES</write_results> | ||
+ | <write_profile>YES</write_profile> | ||
+ | <write_reflectivity>YES</write_reflectivity> | ||
+ | <write_slabs>YES</write_slabs> | ||
+ | <q_min>0.0006</q_min> | ||
+ | <q_max>0.21</q_max> | ||
+ | <q_num>2001</q_num> | ||
+ | <z_num>201</z_num> | ||
+ | <quadrature_error>0.0005</quadrature_error> | ||
+ | <quadrature_thik>5.0</quadrature_thik> | ||
+ | <fit_do>NO</fit_do> | ||
+ | <fit_weighting>WEIGHT_NONE</fit_weighting> | ||
+ | <fit_iterations>500</fit_iterations> | ||
+ | <fit_write_iterations>5</fit_write_iterations> | ||
+ | </miscellaneous_section> | ||
+ | <!-- ====================================================================== --> | ||
+ | <data_section> | ||
+ | <!-- ===== --> | ||
+ | <data data_id="data0"> | ||
+ | <file_name>data0_l</file_name> | ||
+ | <resolution> | ||
+ | <type>RESOLUTION_NONE</type> | ||
+ | <value/> | ||
+ | <file_name/> | ||
+ | </resolution> | ||
+ | </data> | ||
+ | <!-- ===== --> | ||
+ | <data data_id="data1"> | ||
+ | <file_name>data1_l</file_name> | ||
+ | <resolution> | ||
+ | <type>RESOLUTION_NONE</type> | ||
+ | <value/> | ||
+ | <file_name/> | ||
+ | </resolution> | ||
+ | </data> | ||
+ | <!-- ===== --> | ||
+ | <data data_id="data2"> | ||
+ | <file_name>data2_l</file_name> | ||
+ | <resolution> | ||
+ | <type>RESOLUTION_NONE</type> | ||
+ | <value/> | ||
+ | <file_name/> | ||
+ | </resolution> | ||
+ | </data> | ||
+ | <!-- ===== --> | ||
+ | </data_section> | ||
+ | <!-- ====================================================================== --> | ||
+ | <model_section> | ||
+ | <!-- ===== --> | ||
+ | <model_type>MODEL_LAYER</model_type> | ||
+ | <!-- ===== --> | ||
+ | <model data_idref="data0"> | ||
+ | <name>Silicon in air</name> | ||
+ | <polarized>POLARIZED_UNPOLARIZED</polarized> | ||
+ | <bulk> | ||
+ | <name>ambient</name> | ||
+ | <rsld fix="YES">0</rsld> | ||
+ | </bulk> | ||
+ | <layer> | ||
+ | <name>PS</name> | ||
+ | <thik fix="YES">1000<max>2000</max></thik> | ||
+ | <sigz fix="YES">40</sigz> | ||
+ | <rsld fix="NO">9.0</rsld> | ||
+ | <rmag fix="NO">0.0<min>0.0</min></rmag> | ||
+ | </layer> | ||
+ | <substrate> | ||
+ | <name>glass</name> | ||
+ | <sigz fix="YES">2</sigz> | ||
+ | <rsld fix="YES">22.58</rsld> | ||
+ | </substrate> | ||
+ | <background fix="YES">0</background> | ||
+ | </model> | ||
+ | <!-- ===== --> | ||
+ | <model data_idref="data1"> | ||
+ | <polarized>POLARIZED_UP</polarized> | ||
+ | </model> | ||
+ | <!-- ===== --> | ||
+ | <model data_idref="data2"> | ||
+ | <polarized>POLARIZED_DOWN</polarized> | ||
+ | </model> | ||
+ | <!-- ===== --> | ||
+ | </model_section> | ||
+ | <!-- ====================================================================== --> | ||
+ | </yanera> | ||
</source> | </source> |
Latest revision as of 14:54, 11 March 2017
- Yanera ("Yet Another NEutron Reflectivity Analyzer") is a software package for calculating reflectivity curves. It provides an open-source C++ implementation of the Parratt formalism. Written by Thad Harroun (Brock University), with minor contributions from Kevin Yager.
Example Input File (2007 format)
<?xml version="1.0"?> <!DOCTYPE parratt SYSTEM "parratt.dtd"> <parratt type="parratt" do_fit="no"> <output> <reflectivity>reflectivity.txt</reflectivity> <profile>profile.txt</profile> <q_min> 0.000</q_min> <q_max> 0.160</q_max> <num_q>300</num_q> <num_z>200</num_z> </output> <model> <bulk> <name>ambient</name> <thik fix="1">n/a</thik> <sigz fix="1">n/a</sigz> <rsld fix="1"> 0.000</rsld> </bulk> <layer> <name>PS</name> <thik fix="1">1000.000</thik> <sigz fix="1">40.0</sigz> <rsld fix="1"> 9.13</rsld> </layer> <layer> <name>Ge</name> <thik fix="1">19.700</thik> <sigz fix="1"> 5.000</sigz> <rsld fix="1"> 22.58</rsld> <isld fix="1"> 0.000</isld> </layer> <substrate> <name>glass</name> <thik fix="1">n/a</thik> <sigz fix="1"> 1.700</sigz> <rsld fix="1"> 22.58</rsld> <isld fix="1"> 0.000</isld> </substrate> <coverg fix="1"> 1.000</coverg> <backgd fix="1"> 0.000</backgd> <resoln type="dq/q"> 0.040</resoln> </model> </parratt>
Example Input File (2008 format)
<?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE yanera SYSTEM "yanera.dtd"> <yanera> <!-- ====================================================================== --> <miscellaneous_section> <write_results>YES</write_results> <write_profile>YES</write_profile> <write_reflectivity>YES</write_reflectivity> <write_slabs>YES</write_slabs> <q_min>0.0006</q_min> <q_max>0.21</q_max> <q_num>2001</q_num> <z_num>201</z_num> <quadrature_error>0.0005</quadrature_error> <quadrature_thik>5.0</quadrature_thik> <fit_do>NO</fit_do> <fit_weighting>WEIGHT_NONE</fit_weighting> <fit_iterations>500</fit_iterations> <fit_write_iterations>5</fit_write_iterations> </miscellaneous_section> <!-- ====================================================================== --> <data_section> <!-- ===== --> <data data_id="data0"> <file_name>data0_l</file_name> <resolution> <type>RESOLUTION_NONE</type> <value/> <file_name/> </resolution> </data> <!-- ===== --> <data data_id="data1"> <file_name>data1_l</file_name> <resolution> <type>RESOLUTION_NONE</type> <value/> <file_name/> </resolution> </data> <!-- ===== --> <data data_id="data2"> <file_name>data2_l</file_name> <resolution> <type>RESOLUTION_NONE</type> <value/> <file_name/> </resolution> </data> <!-- ===== --> </data_section> <!-- ====================================================================== --> <model_section> <!-- ===== --> <model_type>MODEL_LAYER</model_type> <!-- ===== --> <model data_idref="data0"> <name>Silicon in air</name> <polarized>POLARIZED_UNPOLARIZED</polarized> <bulk> <name>ambient</name> <rsld fix="YES">0</rsld> </bulk> <layer> <name>PS</name> <thik fix="YES">1000<max>2000</max></thik> <sigz fix="YES">40</sigz> <rsld fix="NO">9.0</rsld> <rmag fix="NO">0.0<min>0.0</min></rmag> </layer> <substrate> <name>glass</name> <sigz fix="YES">2</sigz> <rsld fix="YES">22.58</rsld> </substrate> <background fix="YES">0</background> </model> <!-- ===== --> <model data_idref="data1"> <polarized>POLARIZED_UP</polarized> </model> <!-- ===== --> <model data_idref="data2"> <polarized>POLARIZED_DOWN</polarized> </model> <!-- ===== --> </model_section> <!-- ====================================================================== --> </yanera>