Definition of a spatial function based on a polynomial description.
This module provides a variable that can be used to describe a function with a Legendre series, as found in single elements of the solver. The Legendre modes are read from a file in restart format, but only a single polynomial can be considered (not a mesh).
Configuration for a legpolyvar.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public | :: | poly_space |
Polynomial space of the multidimensional polynomial (Q or P) |
|||
integer, | public | :: | nDims |
Dimensionality of the polynomial (needs to be between 1 and 3). |
|||
integer, | public | :: | degree |
Maximal polynomial degree in the polynomial series. |
|||
integer, | public | :: | iComp |
State component in the given file for the data to read. |
|||
real(kind=rk), | public | :: | origin(3) |
Position of the origin corner for the box, the Legendre polynomials are to live in. |
|||
real(kind=rk), | public | :: | extent |
Extent of the box the Legendre polynomial series is defined in. |
|||
character(len=pathLen), | public | :: | filename |
Name of the file to read the polynomial coefficients from. |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | public | :: | degree |
Maximal polynomial degree in the polynomial series. |
|||
real(kind=rk), | public | :: | origin(3) |
Position of the origin corner for the box, the Legendre polynomials are to live in. |
|||
real(kind=rk), | public | :: | extent |
Extent of the box the Legendre polynomial series is defined in. |
|||
real(kind=rk), | public, | allocatable | :: | modes(:) |
Legendre modes. |
Load the definition of a Legendre polynomial variable from a Lua script.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(flu_State) | :: | L |
Lua script to load the polyvar definition from. |
|||
integer, | intent(in) | :: | parent |
Parent table in the Lua script to read the variable data from. |
||
type(atl_legpolyvar_type), | intent(out) | :: | legpolyvar |
Resulting Legendre polynomial description to fill. |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(tem_variable_type), | intent(in) | :: | var |
Data describing the variable to append (needs to be a legpolyvar). |
||
type(tem_varSys_type), | intent(inout) | :: | varsys |
Variable system to append the variable to. |
||
integer, | intent(out), | optional | :: | pos |
Position of the appended variable in the system. |
|
type(tem_varSys_solverData_evalElem_type), | intent(in), | optional | :: | solverData_evalElem |
A setter to allow the caller to define a routine for the construction of an element representation. |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(atl_legpolyvar_type), | intent(in) | :: | legpolyvar | |||
real(kind=rk), | intent(out), | allocatable | :: | modes(:) |