EIRAM
atomic and molecular data in form of polynomial fits
Data Types | Modules | Functions/Subroutines | Variables
eiram.f90 File Reference

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...
 

Detailed Description

Main file of the library.

Authors
Markus Brenneis Marku.nosp@m.s.Br.nosp@m.ennei.nosp@m.s@un.nosp@m.i-due.nosp@m.ssel.nosp@m.dorf..nosp@m.de, Vladislav Kotov v.kot.nosp@m.ov@f.nosp@m.z-jue.nosp@m.lich.nosp@m..de (contact person)

Definition in file eiram.f90.

Function/Subroutine Documentation

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.

$ y = \sum^n_{i=0} b_i X^i $

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

Parameters
[in]bCoefficients of the polynomial
[in]nOrder of the polynomial
[in]xValue for which the polynomial is calculated

Definition at line 77 of file eiram.f90.