Skip to content

[Refactor]: Dynamic spawner-recruitment logic in benchmarks and projections #36

@k-doering-NOAA

Description

@k-doering-NOAA

Imported from redmine, Issue #56287
Opened by @RickMethot on 2018-10-15
Status when imported: On Hold

The following code seems incomplete in its logic.
Currently, if R0 is time-varying, SS will recalculate SSB_use and in doing so will use the current year's biology-at-age. However, if R0 is not time-varying, but growth or M is time-varying, then SSB_use will remain same as SSB_virgin. It seems useful to consider whether SSB_use should be updated when there is dynamic growth to be more like a complete dynamic B0. Your thoughts appreciated.

  if(SR_parm_timevary(1)==0)  //  R0 is not time-varying
  {R0_use=Recr_virgin; SSB_use=SSB_virgin;}
  else
  {
    R0_use=mfexp(SR_parm_work(1));
    equ_Recr=R0_use;
    Fishon=0;
    eq_yr=y;
    bio_yr=y;
    Do_Equil_Calc(R0_use);                      //  call function to do equilibrium calculation and get SSB_equil
    if(fishery_on_off==1) {Fishon=1;} else {Fishon=0;}
    SSB_use=SSB_equil;
  }
  Recruits=Spawn_Recr(SSB_use,R0_use,SSB_current);  // calls to function Spawn_Recr

Metadata

Metadata

Labels

Epic: Equilibrium calcsGroups together issues/user stories releated to equilibrium calculationson holdrecruitmentwishlistrequest new feature; bigger than revision; OK to remove after adding to Milestone

Type

No type

Projects

Status

No status

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions