Subroutine to semi-coarsen an element with modal polynomial representation to its semi-parent.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=rk), | intent(in) | :: | modalRepFace(:,:) | Modal representation of a function on one of refined element. Which fine element is determined by fineFaceShift Dimensions are: (modg%maxPolyDegree+1)^3 for the first dimension and nScalars for the second dimension. |
||
| type(ply_modg_basis_type) | :: | modg_basis | Informations about the polynomial basis of the MODG scheme. |
|||
| type(atl_modg_2d_scheme_type), | intent(in) | :: | schemeCoarse | The parameters of your MODG scheme on the coarse level. |
||
| type(atl_modg_2d_scheme_type), | intent(in) | :: | schemeFine | The parameters of your MODG scheme on the fint level. |
||
| integer, | intent(in) | :: | coarseDir | The direction of the semi-coarsening. Either 1 or 2 or 3. Have a look at the function description. |
||
| integer, | intent(in) | :: | fineElemShift | The semi-refined element you want to obtain. |
||
| real(kind=rk), | intent(inout) | :: | modalCoarsed(:,:) | The modal representation of modalRepFace on the coarser element, restricted to the given fine element. |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | private | :: | iFunc | ||||
| integer, | private | :: | iDegX | ||||
| integer, | private | :: | iDegY | ||||
| integer, | private | :: | funcPos | ||||
| integer, | private | :: | dof | ||||
| real(kind=rk), | private | :: | coarseSqNorm | ||||
| real(kind=rk), | private | :: | jacobiDetFineToCoarse | ||||
| integer, | private | :: | mpd1 | ||||
| integer, | private | :: | mpd1_square |