| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(parallel_target_flux_t), | intent(in) | :: | self |
Instance of class |
||
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communicator |
||
| type(mesh_cart_t), | intent(in) | :: | mesh |
Mesh |
||
| type(penalisation_t), | intent(in) | :: | penalisation |
Penalisation |
||
| type(equilibrium_storage_t), | intent(in) | :: | equi_storage |
Equilibrium storage |
||
| real(kind=GP), | intent(in), | dimension(mesh%get_n_points()) | :: | g |
Parallel flux in plane |
|
| real(kind=GP), | intent(out) | :: | flux_fwd |
Resulting flux into forward plane penalisation |
||
| real(kind=GP), | intent(out) | :: | flux_bwd |
Resulting flux into backward plane penalisation |
||
| character(len=*), | intent(in), | optional | :: | mode |
Mode of flux computation, may select between: 'DEFAULT' : Fluxes are NOT weighted by local penalisation value 'WEIGHTED' : Fluxes are weighted by local penalisation value |
Compute parallel fluxes into penalisation region flux_fwd is defined as [g * dS] integrated over the set of points which map into the penalisation region in the forward plane. flux_bwd is defined analogously for penalisation in the backward plane. g is a parallel flux, e.g. ne * upar_cano, B the magnetic field, dS the boundary surface Note that input parameters must be consistent with the grid choice when building the marked points, e.g. only staggered or only canonical