Currently the NUOPC cap gets the coupling period in days as an integer, which means trying to run subdaily ends up with 0 which is disallowed.
@nmizukami and I looked at this together, and the call to ESMF_TimeIntervalGet just needs to change from
d=coupling_period
to
s=coupling_period
And we may use s_r8 instead to return a double precision value. Which would work in the code easier.