compdyn / partmc

Particle-resolved stochastic atmospheric aerosol model
http://lagrange.mechse.illinois.edu/partmc/
GNU General Public License v2.0
28 stars 16 forks source link

Reconcile time and elapsed_time variables #202

Open jcurtis2 opened 1 month ago

jcurtis2 commented 1 month ago

In the output, we have two variables that describe time:

    double time ;
            time:unit = "s" ;
            time:description = "time elapsed since simulation start" ;
    double elapsed_time ;
            elapsed_time:unit = "s" ;
            elapsed_time:description = "elapsed time since simulation start" ;

And while these are the same in an initial simulation, they are actually different in a restart simulation where elapsed_time would be the correct time and time is reset to 0 as it appears to be used for a counter for when to do output. Therefore time isn't actually time elapsed since simulation start (and probably shouldn't be used for anything or necessarily output).

Example from urban_plume_0001_00000001.nc when restarted from out_init/urban_plume_0001_00000022.nc

 time = 0 ;
 elapsed_time = 75600 ;

where in out_init/urban_plume_0001_00000022.nc:

 time = 75600 ;
 elapsed_time = 75600 ;

Relevant code:

https://github.com/compdyn/partmc/blob/b0cde23adfacf2a592208e0263e37cf8fe1d1f31/src/run_part.F90#L172

https://github.com/compdyn/partmc/blob/b0cde23adfacf2a592208e0263e37cf8fe1d1f31/src/run_part.F90#L210

https://github.com/compdyn/partmc/blob/b0cde23adfacf2a592208e0263e37cf8fe1d1f31/src/run_part.F90#L794