ESPUTR
calculation of sputtering yields
|
Unit tests for esputr2001.f90. More...
Go to the source code of this file.
Modules | |
module | esputr2001_test |
Functions/Subroutines | |
logical function, public | esputr2001_test::esputr2001_test_wrong_file () |
Test for correct error codes if given file does not exist or is corrupted. More... | |
logical function, public | esputr2001_test::esputr2001_test_wrong_ids () |
Test for correct error codes if projectile/target IDs do not exist. More... | |
logical function, public | esputr2001_test::esputr2001_test_double_init () |
Test for correct error codes if 2001 model is initialized or deallocateted more than once. More... | |
logical function, public | esputr2001_test::esputr2001_test_call_uninitialized () |
Test for correct error codes if functions are used w/o initialization of the module. More... | |
logical function, public | esputr2001_test::esputr2001_test_unknown_elements () |
test for correct error codes if ID of an unknown (chemical) element is requested More... | |
logical function, public | esputr2001_test::esputr2001_test_negative_energy () |
Test for correct error codes if projectile energy is negative. More... | |
logical function, public | esputr2001_test::esputr2001_test_wrong_angle () |
Test for correct error codes if incident angle is out of bounds. More... | |
logical function, public | esputr2001_test::esputr2001_test_n () |
Test that expected values come out of esputr2001_yn. More... | |
logical function, public | esputr2001_test::esputr2001_test_theta () |
Regression test for the angular dependence. More... | |
logical function, public | esputr2001_test::esputr2001_test_eth () |
Check esputr2001_Eth. More... | |
logical function, public | esputr2001_test::esputr2001_test_initialized () |
Check esputr2001_if_initialized. More... | |
logical function, public | esputr2001_test::esputr2001_test_availableenergyrange () |
Check test_availableEnergyRange. More... | |
logical function, public | esputr2001_test::esputr2001_test_extrapolate_angular () |
Check ESPUTR2001_EXTRAPOLATE_ANGULAR=.TRUE. More... | |
program | test2001 |
Variables | |
integer | esputr2001_test::i_ |
character(*), parameter | esputr2001_test::sputer2001_n_fitvalues_file = "../data/ECKSTEIN2007N" |
Dafault paths to the input files. More... | |
character(*), parameter | esputr2001_test::sputer2001_th_fitvalues_file = "../data/ECKSTEIN2007TH" |
integer, parameter | esputr2001_test::n_e0 = 38 |
Number of tested values of incident energy. More... | |
integer, parameter | esputr2001_test::n_combinations = 8 |
Number of tested projectile-target combinations. More... | |
real(kind=esputr_dp), dimension(n_e0), parameter | esputr2001_test::e0 = (/ (i_, i_=0,200,10),(i_, i_=300,900,100),(i_, i_=1000,10000,1000) /) |
Values of incident energy for which the yields are tested (eV) More... | |
character(10), dimension(3, n_combinations), parameter | esputr2001_test::combinations = reshape ( (/ "D ", "Be ", "Beryllium ", "T ", "Be ", "Beryllium ", "D ", "Fe ", "Iron ", "T ", "Fe ", "Iron ", "D ", "Mo ", "Molybdenum", "T ", "Mo ", "Molybdenum", "D ", "W ", "Tungsten ", "T ", "W ", "Tungsten " /), (/ 3, N_COMBINATIONS/) ) |
List of projectile-target combinations for which the reference values of Y(E,0) are defined. More... | |
real(kind=esputr_dp), dimension(n_e0, n_combinations), parameter | esputr2001_test::expected2001 = reshape ( (/ 0.000000000e+00, 3.517315511e-06, 2.784769387e-03, 1.167176911e-02, 2.174908020e-02, 2.902745247e-02, 3.348122594e-02, 3.609674400e-02, 3.762438536e-02, 3.850689496e-02, 3.899485826e-02, 3.923256282e-02, 3.930602035e-02, 3.926849578e-02, 3.915420134e-02, 3.898585217e-02, 3.877897881e-02, 3.854447478e-02, 3.829015189e-02, 3.802171932e-02, 3.774341740e-02, 3.485880922e-02, 3.224377567e-02, 2.999997837e-02, 2.807864040e-02, 2.642054938e-02, 2.497583199e-02, 2.370519061e-02, 2.257802451e-02, 1.569601667e-02, 1.231223625e-02, 1.024762756e-02, 8.837389011e-03, 7.804281917e-03, 7.010352244e-03, 6.378575769e-03, 5.862291863e-03, 5.431454448e-03, 0.000000000e+00, 1.580435292e-05, 2.852500540e-03, 1.011495035e-02, 1.933632321e-02, 2.787885884e-02, 3.462810870e-02, 3.957349789e-02, 4.308016264e-02, 4.553196702e-02, 4.723158029e-02, 4.839660982e-02, 4.917888101e-02, 4.968387131e-02, 4.998539201e-02, 5.013573645e-02, 5.017248698e-02, 5.012305314e-02, 5.000771257e-02, 4.984166982e-02, 4.963646831e-02, 4.669012511e-02, 4.355490822e-02, 4.073809575e-02, 3.827303946e-02, 3.611787579e-02, 3.422330378e-02, 3.254600972e-02, 3.105042704e-02, 2.179001573e-02, 1.716786416e-02, 1.432772094e-02, 1.237930677e-02, 1.094761704e-02, 9.844882790e-03, 8.965805968e-03, 8.246386677e-03, 7.645305840e-03, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 5.100112103e-04, 1.580374898e-03, 3.048681993e-03, 4.802776536e-03, 6.730775099e-03, 8.732937593e-03, 1.072966503e-02, 1.266357317e-02, 1.449747440e-02, 1.621044766e-02, 1.779355957e-02, 1.924607465e-02, 2.057246175e-02, 2.178020349e-02, 2.287828420e-02, 2.387619842e-02, 3.010666093e-02, 3.285989703e-02, 3.423599482e-02, 3.495546787e-02, 3.531556539e-02, 3.545963241e-02, 3.546527637e-02, 3.537826289e-02, 3.285087530e-02, 3.004954688e-02, 2.764256700e-02, 2.561826456e-02, 2.390488458e-02, 2.243808759e-02, 2.116778111e-02, 2.005591807e-02, 1.907351427e-02, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 4.030583889e-05, 1.206100604e-03, 3.339086754e-03, 6.201780630e-03, 9.545002187e-03, 1.312860844e-02, 1.675507742e-02, 2.028213798e-02, 2.361965885e-02, 2.671911408e-02, 2.956161820e-02, 3.214754907e-02, 3.448870262e-02, 3.660286430e-02, 3.851029752e-02, 4.023160837e-02, 4.178653569e-02, 4.319333400e-02, 5.196015755e-02, 5.591999659e-02, 5.795086136e-02, 5.903358165e-02, 5.958253822e-02, 5.980301530e-02, 5.980890673e-02, 5.966880322e-02, 5.556524319e-02, 5.095034766e-02, 4.695330807e-02, 4.357481794e-02, 4.070511218e-02, 3.824184196e-02, 3.610405635e-02, 3.422970473e-02, 3.257122255e-02, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 3.764200472e-06, 5.671733972e-05, 1.535095689e-04, 2.899499471e-04, 4.639264579e-04, 6.731062010e-04, 9.145875173e-04, 1.184908048e-03, 1.480169221e-03, 1.796202192e-03, 2.128740151e-03, 5.586945212e-03, 8.143701414e-03, 9.724548975e-03, 1.070060098e-02, 1.132629886e-02, 1.174256898e-02, 1.202710596e-02, 1.222455063e-02, 1.250755077e-02, 1.203880448e-02, 1.147754165e-02, 1.093174817e-02, 1.042626758e-02, 9.964900289e-03, 9.545251066e-03, 9.163228355e-03, 8.814552903e-03, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 7.457209864e-06, 9.347281503e-05, 2.603873988e-04, 5.080951344e-04, 8.368249243e-04, 1.244684607e-03, 1.727395430e-03, 2.278518905e-03, 2.889891433e-03, 3.552152515e-03, 4.255292454e-03, 4.989164748e-03, 5.743925250e-03, 6.510376587e-03, 1.350334871e-02, 1.805931524e-02, 2.075911820e-02, 2.241112917e-02, 2.347277421e-02, 2.418274363e-02, 2.467008950e-02, 2.500873141e-02, 2.542150891e-02, 2.446126804e-02, 2.332673035e-02, 2.222459659e-02, 2.120341922e-02, 2.027073793e-02, 1.942183560e-02, 1.864858809e-02, 1.794246619e-02, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 1.674048481e-04, 7.083969098e-04, 1.466363038e-03, 2.287401706e-03, 3.062518277e-03, 3.740490999e-03, 4.309932970e-03, 4.779033480e-03, 6.655863423e-03, 6.984090248e-03, 6.997561625e-03, 6.908640396e-03, 6.779674552e-03, 6.634937646e-03, 6.485423360e-03, 6.336530438e-03, 6.191000809e-03, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 0.000000000e+00, 8.705827047e-06, 4.259283291e-05, 9.613860211e-05, 1.681050765e-04, 2.580041112e-04, 2.020298542e-03, 4.658360328e-03, 7.210635189e-03, 9.268944194e-03, 1.082291151e-02, 1.198094226e-02, 1.285167311e-02, 1.351735066e-02, 1.592019769e-02, 1.626619939e-02, 1.616626938e-02, 1.590805439e-02, 1.558613799e-02, 1.524037746e-02, 1.488972934e-02, 1.454375049e-02, 1.420732585e-02 /), (/ N_E0, N_COMBINATIONS /) ) |
Reference values for comparison: sputtering yield for normal incidence. More... | |
integer, parameter | esputr2001_test::n_combinations_theta =13 |
Number of projectile-target-energy combinations for test of the angular dependence. More... | |
character(10), dimension(2, n_combinations_theta), parameter | esputr2001_test::combinations_th = reshape ( (/ "D ", "Be ", "T ", "Be ", "H ", "Fe ", "H ", "Fe ", "H ", "Fe ", "D ", "Mo ", "D ", "Mo ", "D ", "W ", "T ", "W ", "H ", "W ", "He ", "Nb ", "D ", "Ni ", "H ", "Ni " /), (/ 2, N_COMBINATIONS_THETA/) ) |
Projectile-target combinations for tests of the angular dependence. More... | |
real(kind=esputr_dp), dimension(n_combinations_theta) | esputr2001_test::etheta =(/ 11, 1000, 4000, 8000, 6000, 115, 75000, 270, 700, 750, 36500, 4000, 1000 /) |
Incident energy (eV) for test of the angular dependence. More... | |
real(kind=esputr_dp), dimension(n_combinations_theta) | esputr2001_test::thetamax =(/ 4.842048462e-01, 1.400587692e+00, 1.455016598e+00, 1.474063830e+00, 1.463894081e+00, 8.144044996e-01, 1.533924027e+00, 9.465855469e-01, 1.370370612e+00, 1.129766008e+00, 1.510606768e+00, 1.448614114e+00, 1.392779079e+00 /) |
Angle of maximum for tests of the angular dependence. More... | |
real(kind=esputr_dp), dimension(n_combinations_theta) | esputr2001_test::ythetamax =(/ 1.278631895e+00, 1.734397274e+01, 1.648554854e+01, 2.194311127e+01, 1.899924523e+01, 1.198215164e+00, 5.648503105e+01, 1.324261665e+00, 2.470894247e+00, 1.546335313e+00, 1.760099941e+01, 1.139561282e+01, 7.206948643e+00 /) |
Values of Y(E,ThetaMax)/Y(E,0) for test of the angular dependence. More... | |
Unit tests for esputr2001.f90.
Definition in file esputr2001_test.f90.
program test2001 | ( | ) |
Definition at line 538 of file esputr2001_test.f90.
References esputr2001_test::esputr2001_test_availableenergyrange(), esputr2001_test::esputr2001_test_call_uninitialized(), esputr2001_test::esputr2001_test_double_init(), esputr2001_test::esputr2001_test_eth(), esputr2001_test::esputr2001_test_extrapolate_angular(), esputr2001_test::esputr2001_test_initialized(), esputr2001_test::esputr2001_test_n(), esputr2001_test::esputr2001_test_negative_energy(), esputr2001_test::esputr2001_test_theta(), esputr2001_test::esputr2001_test_unknown_elements(), esputr2001_test::esputr2001_test_wrong_angle(), esputr2001_test::esputr2001_test_wrong_file(), esputr2001_test::esputr2001_test_wrong_ids(), and esputr::esputr_unit.