take values interpolated at sf%s_IP positions and give back the degrees of freedom
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(t_sBase), | intent(in) | :: | sf |
self |
||
| real(kind=wp), | intent(in) | :: | g_IP(:) |
interpolation values at s_IP positions [0,1] |
result of interpolation
FUNCTION sBase_initDOF( sf , g_IP) RESULT(DOFs) ! MODULES IMPLICIT NONE !----------------------------------------------------------------------------------------------------------------------------------- ! INPUT VARIABLES CLASS(t_sbase), INTENT(IN ) :: sf !! self REAL(wp) , INTENT(IN ) :: g_IP(:) !! interpolation values at s_IP positions [0,1] !----------------------------------------------------------------------------------------------------------------------------------- ! OUTPUT VARIABLES REAL(wp) :: DOFs(1:sf%nBase) !! result of interpolation !----------------------------------------------------------------------------------------------------------------------------------- ! LOCAL VARIABLES !=================================================================================================================================== IF(SIZE(g_IP,1).NE.sf%nBase) CALL abort(__STAMP__, & 'nDOF not correct when calling sBase_initDOF') SELECT TYPE(sf) TYPE IS(t_sbase_disc) DOFs(:)=g_IP TYPE IS(t_sbase_spl) CALL sf%interpol%compute_interpolant( DOFs(:), g_IP ) CLASS DEFAULT CALL abort(__STAMP__, & "this type of continuity not implemented!") END SELECT !TYPE END FUNCTION sbase_initDOF