SELF_DGModel1D_t Module


Uses

  • module~~self_dgmodel1d_t~~UsesGraph module~self_dgmodel1d_t SELF_DGModel1D_t module~self_mappedscalar_1d SELF_MappedScalar_1D module~self_dgmodel1d_t->module~self_mappedscalar_1d module~self_model SELF_Model module~self_dgmodel1d_t->module~self_model module~self_supportroutines SELF_SupportRoutines module~self_dgmodel1d_t->module~self_supportroutines FEQParse FEQParse module~self_dgmodel1d_t->FEQParse module~self_hdf5 SELF_HDF5 module~self_dgmodel1d_t->module~self_hdf5 HDF5 HDF5 module~self_dgmodel1d_t->HDF5 module~self_metadata SELF_Metadata module~self_dgmodel1d_t->module~self_metadata module~self_mesh_1d SELF_Mesh_1D module~self_dgmodel1d_t->module~self_mesh_1d module~self_mappedscalar_1d_t SELF_MappedScalar_1D_t module~self_mappedscalar_1d->module~self_mappedscalar_1d_t module~self_model->module~self_supportroutines module~self_model->FEQParse module~self_model->module~self_hdf5 module~self_model->HDF5 module~self_model->module~self_metadata iso_fortran_env iso_fortran_env module~self_supportroutines->iso_fortran_env module~self_constants SELF_Constants module~self_supportroutines->module~self_constants module~self_hdf5->HDF5 module~self_hdf5->iso_fortran_env module~self_hdf5->module~self_constants mpi mpi module~self_hdf5->mpi module~self_metadata->module~self_hdf5 module~self_metadata->HDF5 module~self_mesh_1d->module~self_supportroutines module~self_mesh_1d->module~self_hdf5 module~self_mesh_1d->HDF5 module~self_lagrange~3 SELF_Lagrange module~self_mesh_1d->module~self_lagrange~3 module~self_mesh_1d->module~self_constants module~self_mesh SELF_Mesh module~self_mesh_1d->module~self_mesh iso_c_binding iso_c_binding module~self_mesh_1d->iso_c_binding module~self_data SELF_Data module~self_mesh_1d->module~self_data module~self_scalar_1d~3 SELF_Scalar_1D module~self_mesh_1d->module~self_scalar_1d~3 module~self_lagrange~3->iso_fortran_env module~self_lagrange~3->module~self_constants module~self_lagrange~3->iso_c_binding module~self_lagrange_t SELF_Lagrange_t module~self_lagrange~3->module~self_lagrange_t module~self_constants->iso_fortran_env module~self_constants->iso_c_binding module~self_mesh->module~self_constants module~self_mesh->iso_c_binding module~self_domaindecomposition SELF_DomainDecomposition module~self_mesh->module~self_domaindecomposition module~self_mappedscalar_1d_t->FEQParse module~self_mappedscalar_1d_t->module~self_hdf5 module~self_mappedscalar_1d_t->HDF5 module~self_mappedscalar_1d_t->module~self_mesh_1d module~self_mappedscalar_1d_t->module~self_lagrange~3 module~self_mappedscalar_1d_t->module~self_constants module~self_mappedscalar_1d_t->iso_c_binding module~self_mappedscalar_1d_t->module~self_scalar_1d~3 module~self_geometry_1d SELF_Geometry_1D module~self_mappedscalar_1d_t->module~self_geometry_1d module~self_data->FEQParse module~self_data->module~self_hdf5 module~self_data->HDF5 module~self_data->module~self_metadata module~self_data->module~self_lagrange~3 module~self_data->module~self_constants module~self_data->iso_c_binding module~self_scalar_1d_t SELF_Scalar_1D_t module~self_scalar_1d~3->module~self_scalar_1d_t module~self_lagrange_t->module~self_supportroutines module~self_lagrange_t->module~self_hdf5 module~self_lagrange_t->HDF5 module~self_lagrange_t->iso_fortran_env module~self_lagrange_t->module~self_constants module~self_lagrange_t->iso_c_binding module~self_quadrature SELF_Quadrature module~self_lagrange_t->module~self_quadrature module~self_scalar_1d_t->FEQParse module~self_scalar_1d_t->module~self_hdf5 module~self_scalar_1d_t->HDF5 module~self_scalar_1d_t->module~self_metadata module~self_scalar_1d_t->module~self_lagrange~3 module~self_scalar_1d_t->module~self_constants module~self_scalar_1d_t->iso_c_binding module~self_scalar_1d_t->module~self_data module~self_geometry_1d->module~self_supportroutines module~self_geometry_1d->module~self_mesh_1d module~self_geometry_1d->module~self_lagrange~3 module~self_geometry_1d->module~self_constants module~self_geometry_1d->module~self_data module~self_geometry_1d->module~self_scalar_1d~3 module~self_domaindecomposition_t SELF_DomainDecomposition_t module~self_domaindecomposition->module~self_domaindecomposition_t module~self_quadrature->iso_fortran_env module~self_quadrature->module~self_constants module~self_domaindecomposition_t->module~self_supportroutines module~self_domaindecomposition_t->module~self_lagrange~3 module~self_domaindecomposition_t->module~self_constants module~self_domaindecomposition_t->iso_c_binding module~self_domaindecomposition_t->mpi

Used by

  • module~~self_dgmodel1d_t~~UsedByGraph module~self_dgmodel1d_t SELF_DGModel1D_t module~self_dgmodel1d~2 SELF_DGModel1D module~self_dgmodel1d~2->module~self_dgmodel1d_t module~self_dgmodel1d SELF_DGModel1D module~self_dgmodel1d->module~self_dgmodel1d_t module~self_nulldgmodel1d_t self_NullDGModel1D_t module~self_nulldgmodel1d_t->module~self_dgmodel1d~2 module~self_advection_diffusion_1d self_advection_diffusion_1d module~self_advection_diffusion_1d->module~self_dgmodel1d~2 module~self_advection_diffusion_1d_t self_advection_diffusion_1d_t module~self_advection_diffusion_1d->module~self_advection_diffusion_1d_t module~self_burgers1d_t self_Burgers1D_t module~self_burgers1d_t->module~self_dgmodel1d~2 module~self_advection_diffusion_1d_t->module~self_dgmodel1d~2 module~self_nulldgmodel1d self_NullDGModel1D module~self_nulldgmodel1d->module~self_nulldgmodel1d_t module~self_nulldgmodel1d~2 self_NullDGModel1D module~self_nulldgmodel1d~2->module~self_nulldgmodel1d_t module~self_burgers1d~2 self_Burgers1D module~self_burgers1d~2->module~self_burgers1d_t module~self_advection_diffusion_1d~2 self_advection_diffusion_1d module~self_advection_diffusion_1d~2->module~self_advection_diffusion_1d_t module~self_burgers1d self_Burgers1D module~self_burgers1d->module~self_burgers1d_t

Contents


Derived Types

type, public, extends(Model) :: DGModel1D_t

Components

TypeVisibilityAttributesNameInitial
type(MappedScalar1D), public :: dSdt
real(kind=prec), public :: dt
real(kind=prec), public :: entropy
type(MappedScalar1D), public :: flux
type(MappedScalar1D), public :: fluxDivergence
type(Geometry1D), public, pointer:: geometry
logical, public :: gradient_enabled =.false.
integer, public :: ioIterate =0
type(Mesh1D), public, pointer:: mesh
integer, public :: nvar
logical, public :: prescribed_bcs_enabled =.true.
type(MappedScalar1D), public :: solution
type(MappedScalar1D), public :: solutionGradient
type(MappedScalar1D), public :: source
real(kind=prec), public :: t
logical, public :: tecplot_enabled =.true.
procedure(SELF_timeIntegrator), public, pointer:: timeIntegrator=> Euler_timeIntegrator
type(MappedScalar1D), public :: workSol

Type-Bound Procedures

procedure, public :: AdditionalFree => AdditionalFree_Model
procedure, public :: AdditionalInit => AdditionalInit_Model
procedure, public :: AdditionalOutput => AdditionalOutput_Model
procedure, public :: BoundaryFlux => BoundaryFlux_DGModel1D_t
procedure, public :: CalculateEntropy => CalculateEntropy_DGModel1D_t
procedure, public :: CalculateSolutionGradient => CalculateSolutionGradient_DGModel1D_t
procedure, public :: CalculateTendency => CalculateTendency_DGModel1D_t
procedure, public :: Euler_timeIntegrator
procedure, public :: FluxMethod => fluxmethod_DGModel1D_t
procedure, public :: ForwardStep => ForwardStep_Model
procedure, public :: Free => Free_DGModel1D_t
procedure, public :: GetSimulationTime
procedure, public :: IncrementIOCounter
procedure, public :: Init => Init_DGModel1D_t
procedure, public :: LowStorageRK2_timeIntegrator
procedure, public :: LowStorageRK3_timeIntegrator
procedure, public :: LowStorageRK4_timeIntegrator
procedure, public :: PreTendency => PreTendency_Model
procedure, public :: PrintType => PrintType_Model
procedure, public :: ReadModel => Read_DGModel1D_t
procedure, public :: ReportEntropy => ReportEntropy_Model
procedure, public :: ReportMetrics => ReportMetrics_Model
procedure, public :: ReportUserMetrics => ReportUserMetrics_Model
procedure, public :: SetBoundaryCondition => setboundarycondition_DGModel1D_t
procedure, public :: SetGradientBoundaryCondition => setgradientboundarycondition_DGModel1D_t
procedure, public :: SetMetadata => SetMetadata_DGModel1D_t
procedure, public :: SetNumberOfVariables => SetNumberOfVariables_Model
procedure, public :: SetSimulationTime
generic, public :: SetSolution => SetSolutionFromChar_DGModel1D_t, SetSolutionFromEqn_DGModel1D_t
procedure, private :: SetSolutionFromChar_DGModel1D_t
procedure, private :: SetSolutionFromEqn_DGModel1D_t
generic, public :: SetTimeIntegrator => SetTimeIntegrator_withChar
procedure, public :: SourceMethod => sourcemethod_DGModel1D_t
procedure, public :: UpdateGRK2 => UpdateGRK2_DGModel1D_t
procedure, public :: UpdateGRK3 => UpdateGRK3_DGModel1D_t
procedure, public :: UpdateGRK4 => UpdateGRK4_DGModel1D_t
procedure, public :: UpdateSolution => UpdateSolution_DGModel1D_t
procedure, public :: WriteModel => Write_DGModel1D_t
procedure, public :: WriteTecplot => WriteTecplot_DGModel1D_t
procedure, public :: entropy_func => entropy_func_Model
procedure, public :: flux1D => flux1d_Model
procedure, public :: flux2D => flux2d_Model
procedure, public :: flux3D => flux3d_Model
procedure, public :: hbc1d_NoNormalFlow => hbc1d_Generic_Model
procedure, public :: hbc1d_Prescribed => hbc1d_Prescribed_Model
procedure, public :: hbc1d_Radiation => hbc1d_Generic_Model
procedure, public :: hbc2d_NoNormalFlow => hbc2d_Generic_Model
procedure, public :: hbc2d_Prescribed => hbc2d_Prescribed_Model
procedure, public :: hbc2d_Radiation => hbc2d_Generic_Model
procedure, public :: hbc3d_NoNormalFlow => hbc3d_Generic_Model
procedure, public :: hbc3d_Prescribed => hbc3d_Prescribed_Model
procedure, public :: hbc3d_Radiation => hbc3d_Generic_Model
procedure, public :: pbc1d_NoNormalFlow => pbc1d_Generic_Model
procedure, public :: pbc1d_Prescribed => pbc1d_Prescribed_Model
procedure, public :: pbc1d_Radiation => pbc1d_Generic_Model
procedure, public :: pbc2d_NoNormalFlow => pbc2d_Generic_Model
procedure, public :: pbc2d_Prescribed => pbc2d_Prescribed_Model
procedure, public :: pbc2d_Radiation => pbc2d_Generic_Model
procedure, public :: pbc3d_NoNormalFlow => pbc3d_Generic_Model
procedure, public :: pbc3d_Prescribed => pbc3d_Prescribed_Model
procedure, public :: pbc3d_Radiation => pbc3d_Generic_Model
procedure, public :: riemannflux1d => riemannflux1d_Model
procedure, public :: riemannflux2d => riemannflux2d_Model
procedure, public :: riemannflux3d => riemannflux3d_Model
procedure, public :: source1d => source1d_Model
procedure, public :: source2d => source2d_Model
procedure, public :: source3d => source3d_Model

Subroutines

public subroutine BoundaryFlux_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

public subroutine CalculateEntropy_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

public subroutine CalculateTendency_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

public subroutine Free_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

public subroutine Init_DGModel1D_t(this, mesh, geometry)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(out) :: this
type(Mesh1D), intent(in), target:: mesh
type(Geometry1D), intent(in), target:: geometry

public subroutine Read_DGModel1D_t(this, fileName)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
character, intent(in) :: fileName

public subroutine SetMetadata_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

public subroutine SetSolutionFromChar_DGModel1D_t(this, eqnChar)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
character(len=SELF_EQUATION_LENGTH), intent(in) :: eqnChar(1:this%solution%nVar)

public subroutine SetSolutionFromEqn_DGModel1D_t(this, eqn)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
type(EquationParser), intent(in) :: eqn(1:this%solution%nVar)

public subroutine UpdateGRK2_DGModel1D_t(this, m)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
integer, intent(in) :: m

public subroutine UpdateGRK3_DGModel1D_t(this, m)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
integer, intent(in) :: m

public subroutine UpdateGRK4_DGModel1D_t(this, m)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
integer, intent(in) :: m

public subroutine UpdateSolution_DGModel1D_t(this, dt)

Computes a solution update as , where dt is either provided through the interface or taken as the Model's stored time step size (model % dt)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
real(kind=prec), intent(in), optional :: dt

public subroutine WriteTecplot_DGModel1D_t(this, filename)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
character, intent(in), optional :: filename

public subroutine Write_DGModel1D_t(this, fileName)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this
character, intent(in), optional :: fileName

public subroutine fluxmethod_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

public subroutine setboundarycondition_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this

public subroutine sourcemethod_DGModel1D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DGModel1D_t), intent(inout) :: this