Skip to content

adam_prism_fnl_coil_object

ADAM, PRISM coil source definition, FNL backend.

Source: src/app/prism/fnl/adam_prism_fnl_coil_object.F90

Dependencies

Contents

Derived Types

prism_fnl_coil_object

Components

NameTypeAttributesDescription
A_gpureal(kind=R8P)pointerCurrent amplitude (A)
f_gpureal(kind=R8P)pointerCurrent frequency, if AC (Hz)
phase_gpureal(kind=R8P)pointerCurrent initial phase, if AC
J_vec_gpureal(kind=R8P)pointerMatrice contenente versori corrente spire (se assente = 0)

Type-Bound Procedures

NameAttributesDescription
copy_cpu_gpupass(self)Copy data from CPU to GPU.
copy_gpu_cpupass(self)Copy data from GPU to CPU.
destroypass(self)Free device data owned by this object.
initializepass(self)Initialize class from global singletons.

Subroutines

destroy

Free device data owned by the coil FNL object.

fortran
subroutine destroy(self)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_fnl_coil_object)inoutCoils.

Call graph

copy_cpu_gpu

Copy data from CPU to GPU.

fortran
subroutine copy_cpu_gpu(self, coil, grid, buf6D, db6, hb6, verbose)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_fnl_coil_object)inoutThe field.
coilclass(prism_coil_object)inCoils on host.
gridtype(grid_object)inGrid (sibling realm component, threaded in).
buf6Dreal(kind=R8P)inoutoptionalBuffer (host memory, device shape), rank 6D.
db6integer(kind=I4P)inoptionalDevice data bounds, rank 6.
hb6integer(kind=I4P)inoptionalHost data bounds, rank 6.
verboselogicalinoptionalFlag to activate verbose mode.

Call graph

copy_gpu_cpu

Copy data from GPU to CPU.

fortran
subroutine copy_gpu_cpu(self, coil, grid, buf6D, db6, hb6, verbose)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_fnl_coil_object)inoutThe field.
coilclass(prism_coil_object)inoutCoils on host.
gridtype(grid_object)inGrid (sibling realm component, threaded in).
buf6Dreal(kind=R8P)inoutoptionalBuffer (host memory, device shape), rank 6D.
db6integer(kind=I4P)inoptionalDevice data bounds, rank 6.
hb6integer(kind=I4P)inoptionalHost data bounds, rank 6.
verboselogicalinoptionalFlag to activate verbose mode.

Call graph

initialize

Initialize class from program-scope field (adam_field_global) and grid (adam_grid_global) singletons. Requires mpih_fnl (adam_fnl_mpih_global), field and grid singletons to be ready.

fortran
subroutine initialize(self, coil, field, grid, buf6D, db6, hb6)

Arguments

NameTypeIntentAttributesDescription
selfclass(prism_fnl_coil_object)inoutCoils.
coilclass(prism_coil_object)intargetCoils on host.
fieldtype(field_object)inField (sibling realm component, threaded in).
gridtype(grid_object)inGrid (sibling realm component, threaded in).
buf6Dreal(kind=R8P)inoutoptionalBuffer (host memory, device shape), rank 6D.
db6integer(kind=I4P)inoptionalDevice data bounds, rank 6.
hb6integer(kind=I4P)inoptionalHost data bounds, rank 6.

Call graph