Init_MappedScalar2D Subroutine

public subroutine Init_MappedScalar2D(this, interp, nVar, nElem)

Arguments

TypeIntentOptionalAttributesName
class(MappedScalar2D), intent(out) :: this
type(Lagrange), intent(in), target:: interp
integer, intent(in) :: nVar
integer, intent(in) :: nElem

Calls

proc~~init_mappedscalar2d~~CallsGraph proc~init_mappedscalar2d Init_MappedScalar2D proc~ensuredevicebuffers_mappedscalar2d EnsureDeviceBuffers_MappedScalar2D proc~init_mappedscalar2d->proc~ensuredevicebuffers_mappedscalar2d ensuredevicebuffers_scalar2d ensuredevicebuffers_scalar2d proc~ensuredevicebuffers_mappedscalar2d->ensuredevicebuffers_scalar2d ensuredevicebuffer ensuredevicebuffer proc~ensuredevicebuffers_mappedscalar2d->ensuredevicebuffer

Contents

Source Code


Source Code

  subroutine Init_MappedScalar2D(this,interp,nVar,nElem)
    implicit none
    class(MappedScalar2D),intent(out) :: this
    type(Lagrange),intent(in),target :: interp
    integer,intent(in) :: nVar
    integer,intent(in) :: nElem
    ! Local
    integer(c_size_t) :: workSize

    this%interp => interp
    this%nVar = nVar
    this%nElem = nElem
    this%N = interp%N
    this%M = interp%M

    call this%MapArrays(interp%N+1,nVar,nElem)

    allocate(this%meta(1:nVar))
    allocate(this%eqn(1:nVar))

    this%interior = 0.0_prec
    this%boundary = 0.0_prec
    this%extBoundary = 0.0_prec
    this%avgBoundary = 0.0_prec
    this%boundarynormal = 0.0_prec

    call EnsureDeviceBuffers_MappedScalar2D(this)

    call this%UpdateDevice()

  endsubroutine Init_MappedScalar2D