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, | private | :: | poly_space | Polynomial space of the multidimensional polynomial (Q or P) |
|||
integer, | private | :: | nDims | Dimensionality of the polynomial (needs to be between 1 and 3). |
|||
integer, | private | :: | degree | Maximal polynomial degree in the polynomial series. |
|||
integer, | private | :: | iComp | State component in the given file for the data to read. |
|||
real(kind=rk), | private | :: | origin(3) | Position of the origin corner for the box, the Legendre polynomials are to live in. |
|||
real(kind=rk), | private | :: | extent | Extent of the box the Legendre polynomial series is defined in. |
|||
character(len=pathLen), | private | :: | filename | Name of the file to read the polynomial coefficients from. |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer, | private | :: | degree | Maximal polynomial degree in the polynomial series. |
|||
real(kind=rk), | private | :: | origin(3) | Position of the origin corner for the box, the Legendre polynomials are to live in. |
|||
real(kind=rk), | private | :: | extent | Extent of the box the Legendre polynomial series is defined in. |
|||
real(kind=rk), | private, | 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(:) |