Warn, once, about domain endpoints whose bcid has no registered boundary condition. MapBoundaryConditions establishes the count; ForwardStep calls this.
This is deliberately a warning and not an error: the endpoint still receives the periodic default, which may well be what the user wanted.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(DGModel1D_t), | intent(inout) | :: | this |
subroutine ReportUnmappedBoundaries_DGModel1D_t(this)
!! Warn, once, about domain endpoints whose bcid has no registered boundary condition.
!! MapBoundaryConditions establishes the count; ForwardStep calls this.
!!
!! This is deliberately a warning and not an error: the endpoint still receives the
!! periodic default, which may well be what the user wanted.
implicit none
class(DGModel1D_t),intent(inout) :: this
if(this%nUnmappedBoundaries <= 0) return
if(this%unmappedBoundariesReported) return
this%unmappedBoundariesReported = .true.
if(this%mesh%decomp%rankId /= 0) return
print*,__FILE__,' : Warning : ',this%nUnmappedBoundaries, &
' domain endpoints carry a bcid with no boundary condition registered on'// &
' hyperbolicBCs.'
print*,__FILE__,' : Warning : One such bcid is ',this%unmappedBoundaryID
print*,__FILE__,' : Warning : A registration on parabolicBCs alone does not count:'// &
' that list is dispatched by SetGradientBoundaryCondition and writes'// &
' solutionGradient%extBoundary, not the solution trace the Riemann solver reads.'
print*,__FILE__,' : Warning : SetBoundaryCondition leaves those endpoints at the periodic'// &
' default, so the endpoint is wrapped onto the opposite end of the domain rather than'// &
' given the condition the bcid was meant to select.'
print*,__FILE__,' : Warning : Register a boundary condition for that bcid on'// &
' hyperbolicBCs in'// &
' AdditionalInit, or re-tag the endpoints (see mesh%ResetBoundaryConditionType).'
endsubroutine ReportUnmappedBoundaries_DGModel1D_t