| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(tPetscSF), | public | :: | IOToTemperatureSF | ||||
| type(tPetscSF), | public | :: | IOToboundaryFluxSF | ||||
| type(tPetscSF), | public | :: | IOToexternalTemperatureSF | ||||
| type(tPetscSF), | public | :: | IOTofluxSF | ||||
| type(MEF90Ctx_Type), | public, | pointer | :: | MEF90Ctx | => | null() | |
| type(c_ptr), | public | :: | PETScCtx | = | C_NULL_PTR |
Handle on self, set once in MEF90HeatXferCreate with PETScCtx = c_loc(HeatXfer), and handed to PETSc wherever an application context is expected: SNESSetFunction, SNESSetJacobian, TSSetIFunction, TSSetIJacobian, ... The callbacks in m_MEF90_HeatXfer recover the context with call c_f_pointer(PETScCtx, MEF90HeatXferCtx) MEF90HeatXfer_Type cannot be passed to PETSc directly, the way MEF90HeatXferCtx_Type was up to mef90 0.5.2, because extending MEF90Object gives it type-bound procedures and PETSc declares its context arguments as assumed-type. This has to be a component rather than a local or an inline c_loc(), for lifetime reasons that are easy to get wrong: see the note at the top of MEF90/m_MEF90_BaseClass.F90 before changing any of this. |
|
| type(tVec), | public, | pointer | :: | boundaryFluxLocal | => | null() | |
| type(tPetscSF), | public | :: | boundaryFluxToIOSF | ||||
| type(tPetscSF), | public | :: | boundaryToTemperatureSF | ||||
| integer(kind=C_INT32_T), | public | :: | comm | ||||
| integer(kind=C_INT32_T), | public | :: | dim | ||||
| type(tVec), | public, | pointer | :: | externalTemperatureLocal | => | null() | |
| type(tPetscSF), | public | :: | externalTemperatureToIOSF | ||||
| type(tVec), | public, | pointer | :: | fluxLocal | => | null() | |
| type(tPetscSF), | public | :: | fluxToIOSF | ||||
| type(MEF90HeatXferGlobalOptions_Type), | public | :: | globalOptions | ||||
| type(tDM), | public | :: | megaDM | ||||
| character(kind=c_char, len=MEF90MXSTRLEN), | public | :: | name | = | "NULL" | ||
| character(kind=c_char, len=MEF90MXSTRLEN), | public | :: | prefix | ||||
| type(tVec), | public, | pointer | :: | temperatureLocal | => | null() | |
| type(tPetscSF), | public | :: | temperatureToIOSF | ||||
| type(tPetscViewer), | public | :: | viewer |
MEF90HeatXferSetFromOptions: initializes a MEF90HeatXfer_Type from options
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(MEF90HeatXfer_Type), | intent(inout) | :: | self | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90Object_view: Views a MEF90Object and flagged it as viewed so that it is not viewed multiple times when -verbose is set to a high value
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(MEF90Object), | intent(in) | :: | self | |||
| type(tPetscViewer), | intent(in) | :: | viewer | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |
MEF90HeatXferView: the default viewer for a MEF90HeatXfer_Type
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(MEF90HeatXfer_Type), | intent(in) | :: | self | |||
| type(tPetscViewer), | intent(in) | :: | viewer | |||
| integer(kind=C_INT32_T), | intent(inout) | :: | ierr |