Hi Adam. Yours is a very useful question, so I have moved it to a new thread.
N@age is always reported for the beginning of the time period (B) and in table below for the middle (M) of the time period.
NUMBERS_AT_AGE
Area Bio_Pattern Sex BirthSeas Settlement Platoon Morph Yr Seas Time Beg/Mid Era 0 1 2 3 4
1 1 1 1 1 1 1 1969 1 1969 B VIRG 3367.43 3046.98 2757.02 2494.66 2257.26
1 1 1 1 1 1 1 1969 1 1969.5 M VIRG 0 0 0 0 0 0
1 1 1 1 1 1 1 1970 1 1970 B INIT 3367.43 3046.98 2757.02 2494.66 2257.26
1 1 1 1 1 1 1 1970 1 1970.5 M INIT 0 0 0 0 0
1 1 1 1 1 1 1 1971 1 1971 B TIME 3192.97 3046.98 2757.02 2494.66 2257.26
1 1 1 1 1 1 1 1971 1 1971.5 M TIME 3037.25 2898.38 2622.56 2372.99 2147.17
movement between areas happens at the end of each time period.
N@age for spawning_biomass is decayed by e(-Z) to the real value spawn_month. Similarly for survey observations.
Later in the report file are tables with labels like:
NUMBERS_AT_AGE_Annual_2 With_fishery
Bio_Pattern Sex Yr 0 1 2 3 4 ....
........
Z_AT_AGE_Annual_2 With_fishery
........
Dynamic_Bzero
Spawning_Biomass_Report_1 No_fishery_for_Z=M_and_dynamic_Bzero
...
NUMBERS_AT_AGE_Annual_1 No_fishery_for_Z=M_and_dynamic_Bzero
etc.
In these tables, SS is looking at just the beginning of the year and is summing over areas and platoons. It does this first with normal dynamics ("with_fishery"), and then again with the F's all set to 0.0. This latter set gives dynamic Bzero and the Z is essentially a population-wide M. In each table, Z is calculated from N@age according to: -ln(Nt+1 / Nt). Then you can get an overall F from the difference between the first Z table and the second Z table.
Note on dynamic Bzero: SS does this pass through the time series with all F's set to zero. In each year, it calculates the recruitment from the spawner-recruitment curve and the recruitment deviation. This means that the absolute value of the recruitments will change relative to the normal model iteration that has the F's reducing the spawning biomass.
Note that if you have requested F reporting to be by the F=Z-M method, then SS does essentially the same thing as shown in the tables discussed above, but now it collapses area, sex, and all morphs so there is just one overall F reported.
FInally, the table you include in your message is not found in the report.sso file. Instead it is in the posterior_vectors.sso file which is written to in append mode to with each model run. It is intended for use with mceval, but you may find other uses as well.
Hope this helps.
Rick