EIRAM
atomic and molecular data in form of polynomial fits
|
Main file of the library. More...
Go to the source code of this file.
Data Types | |
type | eiram::eiram_data |
Data for one reaction. More... | |
Modules | |
module | eiram |
Functions/Subroutines | |
real(dp) function | eiram_fit (B, N, X) |
Elementary function which calculates a single polynomial fit. More... | |
subroutine, public | eiram::eiram_load (filePath, fileName, err) |
Initialization of the module from input files (data sets) More... | |
subroutine, public | eiram::eiram_deallocate (err) |
Deallocate dynamic arrays used by this module. More... | |
integer function, public | eiram::eiram_get_id (fileName, reactionType, reactionIndex, err) |
Return the ID-index of the given reaction in the arrays of the module. More... | |
subroutine, public | eiram::eiram_get_order (N, M, Id, err) |
Return order of the polynomial for both variables. More... | |
subroutine, public | eiram::eiram_create_image (data, err) |
Create a copy (image) of the reactions array stored in the module. More... | |
real(eiram_dp) function, public | eiram::eiram_calc1_fast (Id, lnX) |
Calculate single polynomial fit: scalar version W/O CHECKS. More... | |
subroutine, public | eiram::eiram_calc1 (Y, Id, lnX, err) |
Calculate single polynomial fit. More... | |
subroutine, public | eiram::eiram_calc12 (B, Id, lnX, err) |
Reduce double polynomial fit to single polynomials for given values of the second variable. More... | |
subroutine, public | eiram::eiram_calc2 (Y, Id, LnX1, LnX2, err) |
Calculate double polynomial fit. More... | |
Variables | |
integer, parameter, public | eiram::eiram_dp = SELECTED_REAL_KIND(13) |
Kind parameter for real numbers. More... | |
integer, public | eiram::eiram_unit = 6 |
Unit to which messages are written. More... | |
integer, parameter | eiram::units_length =32 |
Length of the string with units. More... | |
integer, parameter | eiram::quantity_length =64 |
Length of the string with description of a quantity. More... | |
integer, parameter | eiram::reaction_length =128 |
Length of the string with the reaction equation. More... | |
integer, parameter | eiram::description_length =256 |
Length of the string with description of the process. More... | |
integer, parameter, public | eiram::eiram_file_name_length = 32 |
Length of the string with a name of an input file. More... | |
integer, parameter, public | eiram::eiram_type_length = 8 |
Length of the string with reactiontype. More... | |
integer, parameter, public | eiram::eiram_index_length = 16 |
Length of the string with reaction index. More... | |
integer, parameter | eiram::max_line_length = 256 |
Maximum length of a line read from an file. More... | |
logical, parameter | eiram::debug = .false. |
external, public | eiram::eiram_fit |
integer, public | eiram::eiram_nreact =0 |
current number of loaded reactions More... | |
type(eiram_data), dimension(:), allocatable | eiram::reactions |
Array of reactions. More... | |
Main file of the library.
Definition in file eiram.f90.
real(dp) function eiram_fit | ( | real(dp), dimension(0:n), intent(in) | B, |
integer, intent(in) | N, | ||
real(dp), intent(in) | X | ||
) |
Elementary function which calculates a single polynomial fit.
This function is called in eiram_calc1_fast, eiram_calc1, eiram_calc12, eiram_calc2
It was decided to use a function call although it costs additional time because : i) in this case the plynomial calculation code is implemented only once, ii) compiler can use inlining to optimize the call
[in] | b | Coefficients of the polynomial |
[in] | n | Order of the polynomial |
[in] | x | Value for which the polynomial is calculated |