Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
character, | public, | allocatable | :: | equation | |||
type(TokenStack), | public | :: | inFix | ||||
character, | public, | allocatable | :: | inFixFormula | |||
type(IndepVar), | public, | dimension(:), allocatable | :: | indepVars | |||
integer, | public | :: | nIndepVars | ||||
type(TokenStack), | public | :: | postFix | ||||
character, | public, | allocatable | :: | variableName |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character | :: | equation | ||||
character | :: | indepVars(:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(EquationParser), | intent(inout) | :: | parser |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser), | intent(inout) | :: | parser | |||
logical, | intent(out) | :: | equationCleaned |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser), | intent(inout) | :: | parser |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(1:parser%nIndepVars) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(1:parser%nIndepVars) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(:,:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(:,:,:,:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real32) | :: | x(1:parser%nIndepVars) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser) | :: | parser | ||||
real(kind=real64) | :: | x(1:parser%nIndepVars) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser), | intent(in) | :: | parser |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser), | intent(in) | :: | parser |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(EquationParser), | intent(inout) | :: | parser | |||
logical, | intent(out) | :: | tokenized | |||
character, | intent(out), | allocatable | :: | errorMsg |
type,public :: EquationParser
character(:),allocatable :: equation
character(:),allocatable :: variableName
character(:),allocatable :: inFixFormula
integer :: nIndepVars
type(IndepVar),dimension(:),allocatable :: indepVars
type(TokenStack) :: inFix
type(TokenStack) :: postFix
contains
final :: Finalize_EquationParser
procedure :: CleanEquation
procedure :: Tokenize
procedure :: ConvertToPostfix
generic :: Evaluate => Evaluate_sfp32,Evaluate_sfp64, &
Evaluate_r1fp32,Evaluate_r1fp64, &
Evaluate_r2fp32,Evaluate_r2fp64, &
Evaluate_r3fp32,Evaluate_r3fp64, &
Evaluate_r4fp32,Evaluate_r4fp64
procedure,private :: Evaluate_sfp32,Evaluate_sfp64
procedure,private :: Evaluate_r1fp32,Evaluate_r1fp64
procedure,private :: Evaluate_r2fp32,Evaluate_r2fp64
procedure,private :: Evaluate_r3fp32,Evaluate_r3fp64
procedure,private :: Evaluate_r4fp32,Evaluate_r4fp64
procedure :: Print_InFixTokens
procedure :: Print_PostFixTokens
procedure,nopass,private :: Priority
endtype EquationParser