2013年11月6日水曜日

List of registered FABM models by default

In the current version of FABM, there are 9 models available according to '~/FABM/fabm-git/src/fabm.F90':

   subroutine register_models()
!
! !REVISION HISTORY:
!  Original author(s): Jorn Bruggeman
!EOP
!
!-----------------------------------------------------------------------
!BOC
   ! Start with empty arrays with model identifiers and names.
   allocate(modelids  (0))
   allocate(modelnames(0))

   ! Register specific biogeochemical models.
   call register_model(model_container_id,          '')
   call register_model(gotm_npzd_id,                'gotm_npzd')
   call register_model(gotm_fasham_id,              'gotm_fasham')
   call register_model(metu_mnemiopsis_id,          'metu_mnemiopsis')
   call register_model(pml_ersem_id,                'pml_ersem')
   call register_model(pml_carbonate_id,            'pml_carbonate')
   call register_model(examples_benthic_predator_id,'examples_benthic_predator')
   call register_model(iow_ergom_id,                'iow_ergom')
   call register_model(iow_spm_id,                  'iow_spm')
   call register_model(klimacampus_phy_feedback_id, 'klimacampus_phy_feedback')
   ! ADD_NEW_MODEL_HERE - required

   end subroutine register_models

Those in red are the IDs you would define at the beginning of 'fabm.nml'.

Apparently 'au_prey_predator' is not added in the code while the namelist exists. Perhaps this model is under development?

Obviously, to implement a new model, you need to add a new line with your model name in the above code (better description can probably be found here: http://sourceforge.net/apps/mediawiki/fabm/index.php?title=Developing_a_new_biogeochemical_model).

The namelist files for each of these models can be found in '~/FABM/fabm-git/testcases' except for 'pml_ersem' (I couldn't find the namelist for this model).

Some models such as 'pml_carbonate' may be coupled to 'gotm_npzd' as in the case for '~/FABM/fabm-git/testcases/fabm-npzd-carbonate.nml'. In this configuration, an additional parameter is defined in 'gotm_npzd': 

dic_variable='pml_carbonate_dic'

I believe (and I did not check the model code) that this parameter activates the calculation of DIC concentration within the NPZD model, in which the information is passed onto the carbon cycle model to account for the biological pump. 'pml_carbonate' runs on its own, in which case I think it simulates the physicochemical dynamics only.

0 件のコメント:

コメントを投稿