Casal2 / CASAL2

Integrated Population Dynamics Model (Casal2)
https://casal2.github.io
GNU General Public License v2.0
27 stars 24 forks source link

Change ycs_values to be referenced by recruit year rather than spawning year (ycs_year) #395

Closed Craig44 closed 2 years ago

Craig44 commented 2 years ago

I would like to propose we move away from using ycs_years to reference the ycs_values parameters. Currently Casal2 follows CASAL's convention of referencing ycs_values by ycs_years which are the years of the corresponding spawning events. This causes problems and confusion in the code base for time-varying and projections classes.

My suggestion is ycs_years can remain as an subcommand, but the ycs_values will be referenced by the recruitment year not spawning year. This is a departure from CASAL and will cause some translation pain, but in the long run it will lead to a more robust code base.

currently a model that has the following ycs_values

process[Recruit].ycs_values{1990:2000}

and a @y_enter 2. Then the ycs value will need to be changed to be referenced as

process[Recruit].ycs_values{1992:2002}

One proposed change is to change the subcommand names way from ycs_values to recruitment_multiplier The point is to avoid confusion with this subtle change. Now users will have actively look for the solution.