Hi Laura,
Here are some answers for you. Rick can correct me if I get any of this wrong.
Specifying forecast F
You can specify a specific F value for use in the forecast via this option:
5 # Forecast: 0=none; 1=F(SPR); 2=F(MSY) 3=F(Btgt) or F0.1; 4=Ave F (uses first-last relF yrs); 5=input annual F scalar
where you would then enter two lines later something like
0.13 # F scalar (only used for Do_Forecast==5)
However, the better way to do that for FXX% rates would be to use a combination of the benchmark reference points at the top of the forecast file and the other forecast options. For F_SPR=35% you would use
0.35 # SPR target (e.g. 0.40)
...
1 # Forecast: 0=none; 1=F(SPR); 2=F(MSY) 3=F(Btgt) or F0.1; 4=Ave F (uses first-last relF yrs); 5=input annual F scalar
while for an F associated with a biomass target, you would set the biomass target and use forecast option 3 instead.
To forecast with F2017, you could again input a fixed F value, but the best way is to use the "Ave F" forecast option:
4 # Forecast: 0=none; 1=F(SPR); 2=F(MSY) 3=F(Btgt) or F0.1; 4=Ave F (uses first-last relF yrs); 5=input annual F scalar
where you would then set the 3rd and 4th entry of this vector to 0 (or equivalently to 2017):
#_Fcast_years: beg_selex, end_selex, beg_relF, end_relF, beg_recruits, end_recruits (enter actual year, or values of 0 or -integer to be rel. endyr)
0 0 0 0 0 0
Specifying forecast recruitment:
To set a range of reference years on which to base forecast recruitment, use the 5th and 6th entries of the vector noted above:
#_Fcast_years: beg_selex, end_selex, beg_relF, end_relF, beg_mean recruits, end_recruits (enter actual year, or values of 0 or -integer to be rel. endyr)
0 0 0 0 1993 2001
and then a few lines later set
3 #_Forecast recruitment: 0= spawn_recr; 1=value*spawn_recr_fxn; 2=value*VirginRecr; 3=recent mean from yr range above (need to set phase to -1 in control to get constant recruitment in MCMC)
Also in the control file, you will want to check the "last year of main recr_devs" input to make sure that it reflects what you want (because whatever forecast. For instance, if you have zero information in the data about 2017 recruitment, then it might be better to set that value to 2016 and use average recruitment over a period ending in 2016 for forecast recruitment which would then cause 2017 recruitment to equal that average. Note that if you want your model to reflect the uncertainty around the average forecast recruitment, you should have a non-negative value for "forecast_recruitment phase (incl. late recr) (0 value resets to maxphase+1)" in the control file. Otherwise the uncertainty in things like spawning biomass will shrink over time in the forecast as a function of fixed recruitments.
If the last year of your model is 2017, you may also want to specify fixed catches at the bottom of the forecast file for the years 2018-2020 or whatever period can no longer be influenced by the harvest advice the model is being used to explore.
You should be able to confirm that your settings are working looking at the values in the TIME_SERIES output ($timeseries in r4ss). Note that there could be an interaction with the F_report_units specified in the starter file, so check that value as well.
Lastly, the "OFLCatch_YYYY" values under DERIVED_QUANTITIES ($derived_quants in r4ss) should be the forecast OFL values including dead discards, while the ForeCatch_YYYY would be the ABC values that include any buffer specified in the forecast file (next to "Buffer"), and if you used a control rule to get the forecast F (as opposed to inputting a fixed F), those ForeCatch_YYYY values should match the total dead catch in the time series output.
Let us know if any of this doesn't make sense or you have further questions.
-Ian