@@ -100,7 +100,7 @@ module gotm_fabm
100100! !PRIVATE DATA MEMBERS:
101101 REALTYPE :: cnpar
102102 integer :: w_adv_method,w_adv_discr,ode_method,split_factor,configuration_method
103- logical :: fabm_calc,repair_state, &
103+ logical :: fabm_calc,check_state, repair_state, &
104104 bioshade_feedback,bioalbedo_feedback,biodrag_feedback, &
105105 freshwater_impact,salinity_relaxation_to_freshwater_flux, &
106106 save_inputs, no_surface
@@ -207,6 +207,8 @@ subroutine configure_gotm_fabm(cfg)
207207 default= .false. )
208208 call branch% get(biodrag_feedback, ' surface_drag' , ' surface drag' , &
209209 default= .false. )
210+ call cfg% get(check_state, ' check_state' , ' check state for minimum/maximum boundaries' , &
211+ default= .true. )
210212 call cfg% get(repair_state, ' repair_state' , ' clip state to minimum/maximum boundaries' , &
211213 default= .false. )
212214 branch = > cfg% get_child(' numerics' , display= display_advanced)
@@ -1316,6 +1318,8 @@ subroutine do_repair_state(nlev,location)
13161318! EOP
13171319!- ----------------------------------------------------------------------
13181320! BOC
1321+ if (.not. check_state) return
1322+
13191323 call fabm_check_state(model,1 ,nlev,repair_state,valid)
13201324 if (repair_state.and..not. valid) repair_interior_count = repair_interior_count + 1
13211325 if (valid .or. repair_state) then
0 commit comments