Sin-spike kernel for the Neverworld2 basin: 1 − sin(π·min(|x/L|,0.5)).
Equals 1 at x=0 and drops to 0 at |x|=L/2 (the 0.5 cap stops the sine
re-ascending past its first zero). Re-derived from Marques et al.
(2022, GMD); MOM6-inspired.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Variables
Type
Visibility
Attributes
Name
Initial
real(kind=wp),
private,
parameter
::
PI
=
4.0_wp*atan(1.0_wp)
Source Code
pure function nw2_spike(x,L)result(s)!! Sin-spike kernel for the Neverworld2 basin: `1 − sin(π·min(|x/L|,0.5))`.!! Equals 1 at x=0 and drops to 0 at |x|=L/2 (the 0.5 cap stops the sine!! re-ascending past its first zero). Re-derived from Marques et al.!! (2022, GMD); MOM6-inspired.real(wp),intent(in)::x,Lreal(wp)::sreal(wp),parameter::PI=4.0_wp*atan(1.0_wp)s=1.0_wp-sin(PI*min(abs(x/L),0.5_wp))end function nw2_spike