Module that calculates the finite element basis functions. The different basis functions and their derivatives used throughout the code are calculated here. All routines defined in this module simply return the basis functions for a specific point r in the interval (rj_lo, rj_hi).
Calculates the quadratic basis functions.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | r | current position for r in the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_lo | left edge of the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_hi | right edge of the grid interval |
||
real(kind=dp), | intent(out) | :: | h_quadratic(4) | array containing the quadratic basis functions for this grid interval |
Calculates the derivatives of the quadratic basis functions.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | r | current position for r in the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_lo | left edge of the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_hi | right edge of the grid interval |
||
real(kind=dp), | intent(out) | :: | dh_quadratic_dr(4) | array containing the derivatives of the quadratic basis functions for this grid interval |
Calculates the cubic basis functions.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | r | current position for r in the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_lo | left edge of the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_hi | right edge of the grid interval |
||
real(kind=dp), | intent(out) | :: | h_cubic(4) | array containing the cubic basis functions for this grid interval |
@brief Calculates the derivatives of the cubic basis functions.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | r | current position for r in the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_lo | left edge of the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_hi | right edge of the grid interval |
||
real(kind=dp), | intent(out) | :: | dh_cubic_dr(4) | array containing the derivatives of the cubic basis functions for this grid interval |
@brief Calculates the second derivatives of the cubic basis functions.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in) | :: | r | current position for r in the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_lo | left edge of the grid interval |
||
real(kind=dp), | intent(in) | :: | rj_hi | right edge of the grid interval |
||
real(kind=dp), | intent(out) | :: | ddh_cubic_dr(4) | array containing the derivatives of the cubic basis functions for this grid interval |