As your KepertWindField but also computes vertical velocity w(r) = (1/r) * dQ/dr where Q(r) = r*C*Vg*(Vg + 2*vs) / ( f + Vg/r + dVg/dr ). Derivatives use 3-point stencils with radii r - dr, r, r + dr.
KepertVerticalWindField(
rMax,
vMax,
vFm,
thetaFm,
f,
Rlam,
VZ,
surface,
dr_m = 10
)
NumericMatrix with columns: 1) u (m/s), 2) v (m/s), 3) Ks (-), 4) w (m/s)
radius of maximum winds in km
maximum wind velocity in m/s
forward speed of TC (m/s)
forward direction of TC (deg)
single coriolis parameter (1/s)
two columns: [radius_km, azimuth_deg] from grid point to TC centre
two columns: [Vi (m/s), Zi (1/s)]
equals 1 for surface winds (reduced from gradient level), otherwise gradient winds.
finite-difference step in metres (default 10 m)