Skip to content

Commit

Permalink
Add _flux and _tendency to glo_avg vars
Browse files Browse the repository at this point in the history
This should be the last of the code clean-up commits following review of marbl-ecosys#308
  • Loading branch information
mnlevy1981 committed Aug 28, 2018
1 parent 605aecb commit f2ff0b1
Show file tree
Hide file tree
Showing 4 changed files with 144 additions and 139 deletions.
132 changes: 66 additions & 66 deletions src/marbl_glo_avg_mod.F90
Original file line number Diff line number Diff line change
Expand Up @@ -7,85 +7,85 @@ module marbl_glo_avg_mod
implicit none
public

integer (int_kind) :: glo_avg_field_ind_interior_CaCO3_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_POC_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_POP_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_bSi_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_d_POC_bury_d_bury_coeff = 0
integer (int_kind) :: glo_avg_field_ind_interior_d_POP_bury_d_bury_coeff = 0
integer (int_kind) :: glo_avg_field_ind_interior_d_bSi_bury_d_bury_coeff = 0

integer (int_kind) :: glo_avg_field_ind_surface_C_input = 0
integer (int_kind) :: glo_avg_field_ind_surface_P_input = 0
integer (int_kind) :: glo_avg_field_ind_surface_Si_input = 0

integer (int_kind) :: glo_scalar_ind_interior_POC_bury_coeff = 0
integer (int_kind) :: glo_scalar_ind_interior_POP_bury_coeff = 0
integer (int_kind) :: glo_scalar_ind_interior_bSi_bury_coeff = 0
integer (int_kind) :: glo_avg_field_ind_interior_tendency_CaCO3_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_tendency_POC_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_tendency_POP_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_tendency_bSi_bury = 0
integer (int_kind) :: glo_avg_field_ind_interior_tendency_d_POC_bury_d_bury_coeff = 0
integer (int_kind) :: glo_avg_field_ind_interior_tendency_d_POP_bury_d_bury_coeff = 0
integer (int_kind) :: glo_avg_field_ind_interior_tendency_d_bSi_bury_d_bury_coeff = 0

integer (int_kind) :: glo_avg_field_ind_surface_flux_C_input = 0
integer (int_kind) :: glo_avg_field_ind_surface_flux_P_input = 0
integer (int_kind) :: glo_avg_field_ind_surface_flux_Si_input = 0

integer (int_kind) :: glo_scalar_ind_interior_tendency_POC_bury_coeff = 0
integer (int_kind) :: glo_scalar_ind_interior_tendency_POP_bury_coeff = 0
integer (int_kind) :: glo_scalar_ind_interior_tendency_bSi_bury_coeff = 0

contains

!*****************************************************************************

subroutine marbl_glo_avg_var_cnts_compute( &
glo_avg_field_cnt_interior, &
glo_avg_field_cnt_surface, &
glo_scalar_cnt_interior, &
glo_scalar_cnt_surface)
glo_avg_field_cnt_interior_tendency, &
glo_avg_field_cnt_surface_flux, &
glo_scalar_cnt_interior_tendency, &
glo_scalar_cnt_surface_flux)

use marbl_settings_mod, only : ladjust_bury_coeff

integer (int_kind), intent(out) :: glo_avg_field_cnt_interior
integer (int_kind), intent(out) :: glo_avg_field_cnt_surface
integer (int_kind), intent(out) :: glo_scalar_cnt_interior
integer (int_kind), intent(out) :: glo_scalar_cnt_surface
integer (int_kind), intent(out) :: glo_avg_field_cnt_interior_tendency
integer (int_kind), intent(out) :: glo_avg_field_cnt_surface_flux
integer (int_kind), intent(out) :: glo_scalar_cnt_interior_tendency
integer (int_kind), intent(out) :: glo_scalar_cnt_surface_flux

glo_avg_field_cnt_interior = 0
glo_avg_field_cnt_surface = 0
glo_scalar_cnt_interior = 0
glo_scalar_cnt_surface = 0
glo_avg_field_cnt_interior_tendency = 0
glo_avg_field_cnt_surface_flux = 0
glo_scalar_cnt_interior_tendency = 0
glo_scalar_cnt_surface_flux = 0

if (ladjust_bury_coeff) then
glo_avg_field_cnt_interior = glo_avg_field_cnt_interior + 1
glo_avg_field_ind_interior_CaCO3_bury = glo_avg_field_cnt_interior
glo_avg_field_cnt_interior_tendency = glo_avg_field_cnt_interior_tendency + 1
glo_avg_field_ind_interior_tendency_CaCO3_bury = glo_avg_field_cnt_interior_tendency

glo_avg_field_cnt_interior = glo_avg_field_cnt_interior + 1
glo_avg_field_ind_interior_POC_bury = glo_avg_field_cnt_interior
glo_avg_field_cnt_interior_tendency = glo_avg_field_cnt_interior_tendency + 1
glo_avg_field_ind_interior_tendency_POC_bury = glo_avg_field_cnt_interior_tendency

glo_avg_field_cnt_interior = glo_avg_field_cnt_interior + 1
glo_avg_field_ind_interior_POP_bury = glo_avg_field_cnt_interior
glo_avg_field_cnt_interior_tendency = glo_avg_field_cnt_interior_tendency + 1
glo_avg_field_ind_interior_tendency_POP_bury = glo_avg_field_cnt_interior_tendency

glo_avg_field_cnt_interior = glo_avg_field_cnt_interior + 1
glo_avg_field_ind_interior_bSi_bury = glo_avg_field_cnt_interior
glo_avg_field_cnt_interior_tendency = glo_avg_field_cnt_interior_tendency + 1
glo_avg_field_ind_interior_tendency_bSi_bury = glo_avg_field_cnt_interior_tendency

glo_avg_field_cnt_interior = glo_avg_field_cnt_interior + 1
glo_avg_field_ind_interior_d_POC_bury_d_bury_coeff = glo_avg_field_cnt_interior
glo_avg_field_cnt_interior_tendency = glo_avg_field_cnt_interior_tendency + 1
glo_avg_field_ind_interior_tendency_d_POC_bury_d_bury_coeff = glo_avg_field_cnt_interior_tendency

glo_avg_field_cnt_interior = glo_avg_field_cnt_interior + 1
glo_avg_field_ind_interior_d_POP_bury_d_bury_coeff = glo_avg_field_cnt_interior
glo_avg_field_cnt_interior_tendency = glo_avg_field_cnt_interior_tendency + 1
glo_avg_field_ind_interior_tendency_d_POP_bury_d_bury_coeff = glo_avg_field_cnt_interior_tendency

glo_avg_field_cnt_interior = glo_avg_field_cnt_interior + 1
glo_avg_field_ind_interior_d_bSi_bury_d_bury_coeff = glo_avg_field_cnt_interior
glo_avg_field_cnt_interior_tendency = glo_avg_field_cnt_interior_tendency + 1
glo_avg_field_ind_interior_tendency_d_bSi_bury_d_bury_coeff = glo_avg_field_cnt_interior_tendency


glo_avg_field_cnt_surface = glo_avg_field_cnt_surface + 1
glo_avg_field_ind_surface_C_input = glo_avg_field_cnt_surface
glo_avg_field_cnt_surface_flux = glo_avg_field_cnt_surface_flux + 1
glo_avg_field_ind_surface_flux_C_input = glo_avg_field_cnt_surface_flux

glo_avg_field_cnt_surface = glo_avg_field_cnt_surface + 1
glo_avg_field_ind_surface_P_input = glo_avg_field_cnt_surface
glo_avg_field_cnt_surface_flux = glo_avg_field_cnt_surface_flux + 1
glo_avg_field_ind_surface_flux_P_input = glo_avg_field_cnt_surface_flux

glo_avg_field_cnt_surface = glo_avg_field_cnt_surface + 1
glo_avg_field_ind_surface_Si_input = glo_avg_field_cnt_surface
glo_avg_field_cnt_surface_flux = glo_avg_field_cnt_surface_flux + 1
glo_avg_field_ind_surface_flux_Si_input = glo_avg_field_cnt_surface_flux


glo_scalar_cnt_interior = glo_scalar_cnt_interior + 1
glo_scalar_ind_interior_POC_bury_coeff = glo_scalar_cnt_interior
glo_scalar_cnt_interior_tendency = glo_scalar_cnt_interior_tendency + 1
glo_scalar_ind_interior_tendency_POC_bury_coeff = glo_scalar_cnt_interior_tendency

glo_scalar_cnt_interior = glo_scalar_cnt_interior + 1
glo_scalar_ind_interior_POP_bury_coeff = glo_scalar_cnt_interior
glo_scalar_cnt_interior_tendency = glo_scalar_cnt_interior_tendency + 1
glo_scalar_ind_interior_tendency_POP_bury_coeff = glo_scalar_cnt_interior_tendency

glo_scalar_cnt_interior = glo_scalar_cnt_interior + 1
glo_scalar_ind_interior_bSi_bury_coeff = glo_scalar_cnt_interior
glo_scalar_cnt_interior_tendency = glo_scalar_cnt_interior_tendency + 1
glo_scalar_ind_interior_tendency_bSi_bury_coeff = glo_scalar_cnt_interior_tendency
end if

end subroutine marbl_glo_avg_var_cnts_compute
Expand Down Expand Up @@ -169,57 +169,57 @@ subroutine marbl_glo_avg_init_rmean_vals( &
rmean_d_bSi_bury_d_bury_coeff_integral = rmean_bSi_bury_integral / parm_init_bSi_bury_coeff


glo_ind = glo_avg_field_ind_interior_CaCO3_bury
glo_ind = glo_avg_field_ind_interior_tendency_CaCO3_bury
glo_avg_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_avg_CaCO3_bury'
glo_avg_rmean_interior(glo_ind)%init_val = rmean_CaCO3_bury_integral

glo_ind = glo_avg_field_ind_interior_POC_bury
glo_ind = glo_avg_field_ind_interior_tendency_POC_bury
glo_avg_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_avg_POC_bury'
glo_avg_rmean_interior(glo_ind)%init_val = rmean_POC_bury_integral

glo_ind = glo_avg_field_ind_interior_POP_bury
glo_ind = glo_avg_field_ind_interior_tendency_POP_bury
glo_avg_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_avg_POP_bury'
glo_avg_rmean_interior(glo_ind)%init_val = rmean_POP_bury_integral

glo_ind = glo_avg_field_ind_interior_bSi_bury
glo_ind = glo_avg_field_ind_interior_tendency_bSi_bury
glo_avg_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_avg_bSi_bury'
glo_avg_rmean_interior(glo_ind)%init_val = rmean_bSi_bury_integral

glo_ind = glo_avg_field_ind_interior_d_POC_bury_d_bury_coeff
glo_ind = glo_avg_field_ind_interior_tendency_d_POC_bury_d_bury_coeff
glo_avg_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_avg_d_POC_bury_d_bury_coeff'
glo_avg_rmean_interior(glo_ind)%init_val = rmean_d_POC_bury_d_bury_coeff_integral

glo_ind = glo_avg_field_ind_interior_d_POP_bury_d_bury_coeff
glo_ind = glo_avg_field_ind_interior_tendency_d_POP_bury_d_bury_coeff
glo_avg_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_avg_d_POP_bury_d_bury_coeff'
glo_avg_rmean_interior(glo_ind)%init_val = rmean_d_POP_bury_d_bury_coeff_integral

glo_ind = glo_avg_field_ind_interior_d_bSi_bury_d_bury_coeff
glo_ind = glo_avg_field_ind_interior_tendency_d_bSi_bury_d_bury_coeff
glo_avg_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_avg_d_bSi_bury_d_bury_coeff'
glo_avg_rmean_interior(glo_ind)%init_val = rmean_d_bSi_bury_d_bury_coeff_integral


glo_ind = glo_avg_field_ind_surface_C_input
glo_ind = glo_avg_field_ind_surface_flux_C_input
glo_avg_rmean_surface(glo_ind)%sname = 'MARBL_rmean_glo_avg_C_input'
glo_avg_rmean_surface(glo_ind)%init_val = rmean_C_input_integral

glo_ind = glo_avg_field_ind_surface_P_input
glo_ind = glo_avg_field_ind_surface_flux_P_input
glo_avg_rmean_surface(glo_ind)%sname = 'MARBL_rmean_glo_avg_P_input'
glo_avg_rmean_surface(glo_ind)%init_val = rmean_P_input_integral

glo_ind = glo_avg_field_ind_surface_Si_input
glo_ind = glo_avg_field_ind_surface_flux_Si_input
glo_avg_rmean_surface(glo_ind)%sname = 'MARBL_rmean_glo_avg_Si_input'
glo_avg_rmean_surface(glo_ind)%init_val = rmean_Si_input_integral


glo_ind = glo_scalar_ind_interior_POC_bury_coeff
glo_ind = glo_scalar_ind_interior_tendency_POC_bury_coeff
glo_scalar_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_scalar_POC_bury_coeff'
glo_scalar_rmean_interior(glo_ind)%init_val = parm_init_POC_bury_coeff

glo_ind = glo_scalar_ind_interior_POP_bury_coeff
glo_ind = glo_scalar_ind_interior_tendency_POP_bury_coeff
glo_scalar_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_scalar_POP_bury_coeff'
glo_scalar_rmean_interior(glo_ind)%init_val = parm_init_POP_bury_coeff

glo_ind = glo_scalar_ind_interior_bSi_bury_coeff
glo_ind = glo_scalar_ind_interior_tendency_bSi_bury_coeff
glo_scalar_rmean_interior(glo_ind)%sname = 'MARBL_rmean_glo_scalar_bSi_bury_coeff'
glo_scalar_rmean_interior(glo_ind)%init_val = parm_init_bSi_bury_coeff
end if
Expand Down
12 changes: 6 additions & 6 deletions src/marbl_interface.F90
Original file line number Diff line number Diff line change
Expand Up @@ -923,12 +923,12 @@ subroutine set_global_scalars(this, field_source)
character(len=*), intent(in) :: field_source ! 'interior_tendency' or 'surface_flux`'

if (field_source == 'interior_tendency') then
call marbl_interior_tendency_adjust_bury_coeff( &
marbl_particulate_share = this%particulate_share, &
glo_avg_rmean_interior = this%glo_avg_rmean_interior, &
glo_avg_rmean_surface = this%glo_avg_rmean_surface, &
glo_scalar_rmean_interior = this%glo_scalar_rmean_interior, &
glo_scalar_interior = this%glo_scalar_interior)
call marbl_interior_tendency_adjust_bury_coeff( &
marbl_particulate_share = this%particulate_share, &
glo_avg_rmean_interior_tendency = this%glo_avg_rmean_interior, &
glo_avg_rmean_surface_flux = this%glo_avg_rmean_surface, &
glo_scalar_rmean_interior_tendency = this%glo_scalar_rmean_interior, &
glo_scalar_interior_tendency = this%glo_scalar_interior)
end if

end subroutine set_global_scalars
Expand Down
Loading

0 comments on commit f2ff0b1

Please sign in to comment.