Setting the namelist variable "radforce = .true." instructs the model to do two radiation calculations:
1) the active calculation
- is done regardless of 'radforce' setting
- output is written out in FSNT, FSNS, QRS
- results influence the model state (this is why it is called 'active')
- uses aerosol scales carscl, sulscl,... = 1 by default, so this calculation *includes* the effect of the aerosols by default.
2) the passive calculation
-is only done when radforce = true
-output is written out in FSNT_RF, FSNS_RF, QRS_RF
-results *do not* influence the model state (this is why it is called 'passive')
-uses aerosol scales carscl_rf, sulscl_rf,... = 0 by default, so this calculation *does not include* the effect of the aerosols by default.
For a single model run, with radforce on and using the defaults aerosol scales, the difference between the active and passive output fields gives the total aerosol forcing. For example, FSNT - FSNT_RF = net solar flux at the top of atmopshere due to aerosols.
If you do two runs with the active radiation difference:
1) all aerosol scales = 1
2) all aerosol scales = 0
the difference between the radiation fields is not just the aerosol forcing. This is because the active radiation calculation influences the model state (e.g. the heating rate QRS is used to adjust the model temperature) and in the two runs, this influence will be different. This is a way to calculate the aerosol *feedback* effect on the atmosphere, which is interesting also, but it is not the forcing. To calculate the forcing, use radforce (as explained above)
Some things to note:
1) Setting radforce = .true. will turn on the passive calculation, which does not influence the model, so FSNT etc should not change. Only FNST_RF will change
2) To test your set-up and understanding, you can do a 2-timestep run where you make the passive calculation identical to the active calculation. (by setting all {aer}scl_rf = 1). If FSNT_RF is not = FSNT, that is a sign something is wrong. If it is equal, then set the scales you want = 0, and make sure the results make sense.
By the way, which version are you running?