Appearance
adam_prism_bc_object
ADAM, PRISM Boundary Conditions class definition, CPU backend.
Source: src/app/prism/common/adam_prism_bc_object.F90
Dependencies
Contents
Variables
| Name | Type | Attributes | Description |
|---|---|---|---|
INI_SECTION_NAMES | character(len=8) | parameter | INI (config) file section name containing BC |
BC_EXTRAPOLATION | integer(kind=I4P) | parameter | Extrapolation. |
BC_NEUMANN | integer(kind=I4P) | parameter | Neumann BC. |
BC_DIRICHLET | integer(kind=I4P) | parameter | Dirichlet BC. |
BC_Silver_Muller | integer(kind=I4P) | parameter | Silver-Muller BC. |
BC_PERIOD | integer(kind=I4P) | parameter | Periodic BC. |
BC_radiative | integer(kind=I4P) | parameter | Radiative BC. |
BC_PEC | integer(kind=I4P) | parameter | Perfect Electric Conductor BC. |
ELL_BC_DIRICHLET | integer(kind=I4P) | parameter | Elliptic Dirichlet BC. |
ELL_BC_PERIODIC | integer(kind=I4P) | parameter | Elliptic periodic BC. |
ELL_BC_EXACT_OPEN | integer(kind=I4P) | parameter | Elliptic exact/open BC. |
ELL_BC_PEC | integer(kind=I4P) | parameter | Elliptic Perfect Electric Conductor BC. |
Derived Types
prism_bc_object
Boundary Conditions class definition, CPU backend.
Components
| Name | Type | Attributes | Description |
|---|---|---|---|
bc_type | integer(kind=I4P) | Boundary condition type. | |
q | real(kind=R8P) | allocatable | Primitive variables (Dx,Dy,Dz,Bx,By,Bz,Jx,Jy,Jz) at BC. |
Type-Bound Procedures
| Name | Attributes | Description |
|---|---|---|
initialize | pass(self) | Initialize BC. |
build_elliptic_bc_types | pass(self) | Build elliptic BC types on all faces. |
load_from_file | pass(self) | Load config from file. |
map_face_bc_to_elliptic | pass(self) | Map one EM BC to one elliptic BC. |
Subroutines
initialize
Initialize the equation.
fortran
subroutine initialize(self, file_parameters)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(prism_bc_object) | inout | BC. | |
file_parameters | type(file_ini) | in | Simulation parameters ini file handler. |
Call graph
load_from_file
Load config from file.
fortran
subroutine load_from_file(self, file_parameters, go_on_fail)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(prism_bc_object) | inout | BC. | |
file_parameters | type(file_ini) | in | Simulation parameters ini file handler. | |
go_on_fail | logical | in | optional | Go on if load fails. |
Call graph
build_elliptic_bc_types
Build the elliptic BC type associated with each EM face BC.
fortran
subroutine build_elliptic_bc_types(self, ivar, ell_bc_type)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(prism_bc_object) | in | BC object. | |
ivar | integer(kind=I4P) | in | Variable (start) index in q. | |
ell_bc_type | integer(kind=I4P) | out | Elliptic BC types. |
Call graph
map_face_bc_to_elliptic
Map one EM BC into the elliptic solver taxonomy.
fortran
subroutine map_face_bc_to_elliptic(self, bc_type, ivar, ell_bc_type)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(prism_bc_object) | in | BC object. | |
bc_type | integer(kind=I4P) | in | EM BC type. | |
ivar | integer(kind=I4P) | in | Variable (start) index in q. | |
ell_bc_type | integer(kind=I4P) | out | Elliptic BC type. |
Call graph