Skip to content

adam_prism_rk_pic_object

ADAM, RK-BC class definition.

Source: src/app/prism/common/adam_prism_rk_pic_object.F90

Dependencies

Contents

Derived Types

prism_rk_pic_object

RK class definition.

Components

NameTypeAttributesDescription
mpihtype(mpih_object)MPI handler.
schemecharacter(len=:)pointerRK scheme.
nrkinteger(kind=I4P)Runge-Kutta stages number.
arkreal(kind=R8P)allocatableRunge-Kutta low storage alpha coefficients.
brkreal(kind=R8P)allocatableRunge-Kutta low storage beta coefficients.
crkreal(kind=R8P)allocatableRunge-Kutta low storage beta coefficients.
alphreal(kind=R8P)allocatableRunge-Kutta SSP alpha coefficients.
betareal(kind=R8P)allocatableRunge-Kutta SSP beta coefficients.
gammreal(kind=R8P)allocatableRunge-Kutta SSP gamma coefficients.
ssareal(kind=R8P)allocatableRunge-Kutta sympletic-splitting part A coefficients.
ssbreal(kind=R8P)allocatableRunge-Kutta sympletic-splitting part B coefficients.
q_pic_rkreal(kind=R8P)allocatableRK stages for pic variables [particle, variable, stage].
particle_numberinteger(kind=I4P)pointerNumber of particles.

Type-Bound Procedures

NameAttributesDescription
assign_stagepass(self)Assign q to RK stage.
compute_stagepass(self)Compute RK stage.
descriptionpass(self)Return pretty-printed object description.
initializepass(self)Initialize class.
initialize_stagespass(self)Initialize RK stages.
update_q_picpass(self)Update RK q.

Subroutines

initialize

Initialize class.

fortran
subroutine initialize(self, file_parameters, rk, pic)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_rk_pic_object)inoutRK object.
file_parameterstype(file_ini)inoptionalSimulation parameters ini file handler.
rktype(rk_object)intargetRK scheme
pictype(prism_pic_object)intargetPhysics object

Call graph

initialize_stages

Initialize RK stages.

fortran
subroutine initialize_stages(self, q_pic)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_rk_pic_object)inoutRK object.
q_picreal(kind=R8P)inConservative variables.

Call graph

compute_stage

Compute RK stage.

fortran
subroutine compute_stage(self, s, dt)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_rk_pic_object)inoutRK object.
sinteger(kind=I4P)inCurrent stage number.
dtreal(kind=R8P)inCurrent time step.

Call graph

assign_stage

Assign q to RK stage.

fortran
subroutine assign_stage(self, s, pic_fields)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_rk_pic_object)inoutRK object.
sinteger(kind=I4P)inCurrent stage number.
pic_fieldsreal(kind=R8P)inPic fields.

Call graph

update_q_pic

Update RK q.

fortran
subroutine update_q_pic(self, dt, q_pic)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_rk_pic_object)inRK object.
dtreal(kind=R8P)inCurrent time step.
q_picreal(kind=R8P)inoutConservative variables.

Call graph

Functions

description

Return a pretty-formatted object description.

Attributes: pure

Returns: character(len=:)

fortran
function description(self) result(desc)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_rk_pic_object)inRK object.

Call graph

crossproduct

Returns: real(kind=R8P)

fortran
function crossproduct(a, b) result(cross)

Arguments

NameTypeIntentAttributesDescription
areal(kind=R8P)inLeft hand side.
breal(kind=R8P)inLeft hand side.

Call graph