AdditionalInit_ECAdvection3D Subroutine

public subroutine AdditionalInit_ECAdvection3D(this)

Arguments

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

Calls

proc~~additionalinit_ecadvection3d~~CallsGraph proc~additionalinit_ecadvection3d AdditionalInit_ECAdvection3D proc~additionalinit_ecadvection3d_t AdditionalInit_ECAdvection3D_t proc~additionalinit_ecadvection3d->proc~additionalinit_ecadvection3d_t

Contents


Source Code

  subroutine AdditionalInit_ECAdvection3D(this)
    implicit none
    class(ECAdvection3D),intent(inout) :: this
    ! Local
    procedure(SELF_bcMethod),pointer :: bcfunc

    ! Call parent _t AdditionalInit (registers CPU mirror BC)
    call AdditionalInit_ECAdvection3D_t(this)

    ! Re-register with GPU-accelerated version
    bcfunc => hbc3d_Mirror_ECAdvection3D_GPU_wrapper
    call this%hyperbolicBCs%RegisterBoundaryCondition( &
      SELF_BC_NONORMALFLOW,"no_normal_flow",bcfunc)

  endsubroutine AdditionalInit_ECAdvection3D