[MITgcm-support] TAMC RECOMPUTATION WARNING

BIN ZHAO zhaobin at jhu.edu
Tue Feb 24 11:04:45 EST 2004


Hello,
   I am trying to compile my adjoint code using TAMC but got a lot of TAMC RECOMPUTATION  WARNINGs. 
    The information is like:
    
 TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:459266 in thermodynamics
 triggered by      : bi,bj,exf_clim_temp_r1,fvert,gt,imax,imin,jmax,jmin,k,mythi
d,mytime,theta
 still to be reset : bi,bj,exf_clim_temp_r1,fvert,gt,imax,imin,jmax,jmin,k,mythi
d,mytime,theta

     How can I fix these? My tamc_output and ECCO_CPPOPTIONS.h are in the attachment.
     Thanks.
Bin Zhao
    

-------------- next part --------------
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/                                                                        _/
_/  T angent linear and                                                   _/
_/   A djoint                                            Version 5.3.2    _/
_/    M odel                                                              _/
_/     C ompiler                                                          _/
_/                                                                        _/
_/  Copyright (c) 1995-2002                              Ralf Giering     _/
_/                                                                        _/
_/ THE AUTHOR DOES NOT MAKE  ANY WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES _/
_/ ANY LEGAL LIABILITY OR  RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, _/
_/ OR USEFULNESS  OF ANY INFORMATION OR PROCESS  DISCLOSED, OR REPRESENTS _/
_/ THAT ITS USE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS.                _/
_/                                                                        _/
_/ THE GENERATED CODE IS  FOR NON-PROFIT-ORIENTATED ACADEMIC RESEARCH AND _/
_/ EDUCATION  ONLY.  ANY  COMMERCIAL  OR OTHER  PROFIT-ORIENTATED USE  OR _/
_/ EVALUATION IS STRICTLY FORBIDDEN.  PASSING THE CODE TO ANY THIRD PARTY _/
_/ IS NOT ALLOWED.                                                        _/
_/                                                                        _/
_/ FOR COMMERCIAL OR  OTHER PROFIT-ORIENTATED APPLICATIONS PLEASE CONTACT _/
_/  info at FastOpt.com                                                      _/
_/                                                                        _/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

tamc_code.f:
 parsing subroutine ** adams_bashforth2 **
 parsing subroutine ** calc_buoyancy **
 parsing subroutine ** calc_common_factors **
 parsing subroutine ** calc_diffusivity **
 parsing subroutine ** calc_div_ghat **
 parsing subroutine ** calc_grad_phi_hyd **
 parsing subroutine ** calc_grad_phi_surf **
 parsing subroutine ** calc_gs **
 parsing subroutine ** calc_gt **
 parsing subroutine ** calc_gtr1 **
 parsing subroutine ** calc_ivdc **
 parsing subroutine ** calc_phi_hyd **
 parsing subroutine ** calc_viscosity **
 parsing subroutine ** comm_stats **
 parsing subroutine ** convect **
 parsing subroutine ** convective_adjustment **
 parsing subroutine ** convective_adjustment_ini **
 parsing subroutine ** convective_weights **
 parsing subroutine ** convectively_mixtracer **
 parsing subroutine ** correction_step **
 parsing subroutine ** cycle_tracer **
 parsing subroutine ** diags_phi_hyd **
 parsing subroutine ** diags_phi_rlow **
 parsing function   ** different_multiple **
 parsing subroutine ** do_fields_blocking_exchanges **
 parsing subroutine ** do_stagger_fields_exchanges **
 parsing subroutine ** dynamics **
 72820 CHPF$ INDEPENDENT
             ^
*WARNING* : HPF directive expected
 parsing subroutine ** external_fields_load **
 parsing subroutine ** lef_zero **
 parsing subroutine ** external_forcing_u **
 parsing subroutine ** external_forcing_v **
 parsing subroutine ** external_forcing_t **
 parsing subroutine ** external_forcing_s **
 parsing subroutine ** external_forcing_surf **
 parsing subroutine ** find_alpha **
 parsing subroutine ** find_beta **
 parsing subroutine ** find_rho **
 parsing subroutine ** find_rhop0 **
 parsing subroutine ** find_bulkmod **
 parsing subroutine ** find_rhonum **
 parsing subroutine ** find_rhoden **
 parsing subroutine ** find_rho_scalar **
 parsing subroutine ** look_for_neg_salinity **
 parsing subroutine ** forward_step **
 parsing subroutine ** freeze **
 parsing subroutine ** gad_advection **
 parsing subroutine ** gad_biharm_x **
 parsing subroutine ** gad_biharm_y **
 parsing subroutine ** gad_c2_adv_r **
 parsing subroutine ** gad_c2_adv_x **
 parsing subroutine ** gad_c2_adv_y **
 parsing subroutine ** gad_c4_adv_r **
 parsing subroutine ** gad_c4_adv_x **
 parsing subroutine ** gad_c4_adv_y **
 parsing subroutine ** gad_calc_rhs **
 parsing subroutine ** gad_del2 **
 parsing subroutine ** gad_diff_r **
 parsing subroutine ** gad_diff_x **
 parsing subroutine ** gad_diff_y **
 parsing subroutine ** gad_dst3_adv_x **
 parsing subroutine ** gad_dst3_adv_y **
 parsing subroutine ** gad_dst3_adv_r **
 parsing subroutine ** gad_dst3fl_adv_x **
 parsing subroutine ** gad_dst3fl_adv_y **
 parsing subroutine ** gad_dst3fl_adv_r **
 parsing subroutine ** gad_fluxlimit_adv_r **
 parsing subroutine ** gad_fluxlimit_adv_x **
 parsing subroutine ** gad_fluxlimit_adv_y **
 parsing subroutine ** gad_grad_x **
 parsing subroutine ** gad_grad_y **
 parsing subroutine ** gad_u3_adv_r **
 parsing subroutine ** gad_u3_adv_x **
 parsing subroutine ** gad_u3_adv_y **
 parsing subroutine ** grad_sigma **
 parsing subroutine ** impldiff **
 parsing subroutine ** ini_autodiff **
 parsing subroutine ** ini_cartesian_grid **
 parsing subroutine ** ini_cg2d **
 parsing subroutine ** ini_communication_patterns **
 parsing subroutine ** ini_cori **
 parsing subroutine ** ini_curvilinear_grid **
 parsing subroutine ** ini_depths **
 parsing subroutine ** ini_fields **
 parsing subroutine ** ini_forcing **
 parsing subroutine ** ini_grid **
 parsing subroutine ** ini_linear_phisurf **
 parsing subroutine ** ini_masks_etc **
 parsing subroutine ** ini_mixing **
 parsing subroutine ** ini_p_ground **
 parsing subroutine ** analylic_theta **
 parsing subroutine ** ini_pressure **
 parsing subroutine ** ini_pnh **
 parsing subroutine ** ini_psurf **
 parsing subroutine ** ini_salt **
 parsing subroutine ** ini_spherical_polar_grid **
 parsing subroutine ** ini_theta **
 parsing subroutine ** ini_tr1 **
 parsing subroutine ** ini_dynvars **
 parsing subroutine ** ini_vel **
 parsing subroutine ** ini_vertical_grid **
 parsing subroutine ** initialise_varia **
 parsing subroutine ** integrate_for_w **
 parsing subroutine ** integr_continuity **
 parsing subroutine ** modeldata_example **
 parsing subroutine ** mom_fluxform **
 parsing subroutine ** mom_hdissip **
 parsing subroutine ** mom_vecinv **
 parsing subroutine ** mom_calc_hfacz **
 parsing subroutine ** mom_calc_ke **
 parsing subroutine ** mom_calc_rtrans **
 parsing subroutine ** mom_calc_strain **
 parsing subroutine ** mom_calc_tension **
 parsing subroutine ** mom_cdscheme **
 parsing subroutine ** mom_u_adv_uu **
 parsing subroutine ** mom_u_adv_vu **
 parsing subroutine ** mom_u_adv_wu **
 parsing subroutine ** mom_u_bottomdrag **
 parsing subroutine ** mom_u_coriolis **
 parsing subroutine ** mom_u_coriolis_nh **
 parsing subroutine ** mom_u_del2u **
 parsing subroutine ** mom_u_metric_nh **
 parsing subroutine ** mom_u_metric_sphere **
 parsing subroutine ** mom_u_rviscflux **
 parsing subroutine ** mom_u_sidedrag **
 parsing subroutine ** mom_u_xviscflux **
 parsing subroutine ** mom_u_yviscflux **
 parsing subroutine ** mom_v_adv_uv **
 parsing subroutine ** mom_v_adv_vv **
 parsing subroutine ** mom_v_adv_wv **
 parsing subroutine ** mom_v_bottomdrag **
 parsing subroutine ** mom_v_coriolis **
 parsing subroutine ** mom_v_del2v **
 parsing subroutine ** mom_v_metric_nh **
 parsing subroutine ** mom_v_metric_sphere **
 parsing subroutine ** mom_v_rviscflux **
 parsing subroutine ** mom_v_sidedrag **
 parsing subroutine ** mom_v_xviscflux **
 parsing subroutine ** mom_v_yviscflux **
 parsing subroutine ** mom_vi_calc_absvort3 **
 parsing subroutine ** mom_vi_calc_hdiv **
 parsing subroutine ** mom_vi_calc_ke **
 parsing subroutine ** mom_vi_calc_relvort3 **
 parsing subroutine ** mom_vi_coriolis **
 parsing subroutine ** mom_vi_del2uv **
 parsing subroutine ** mom_vi_hdissip **
 parsing subroutine ** mom_vi_u_coriolis **
 parsing subroutine ** mom_vi_u_grad_ke **
 parsing subroutine ** mom_vi_u_vertshear **
 parsing subroutine ** mom_vi_v_coriolis **
 parsing subroutine ** mom_vi_v_grad_ke **
 parsing subroutine ** mom_vi_v_vertshear **
 parsing subroutine ** packages_init_variables **
 parsing subroutine ** plot_field_xyrs **
 parsing subroutine ** plot_field_xyrl **
 parsing subroutine ** plot_field_xyzrs **
 parsing subroutine ** plot_field_xyzrl **
 parsing subroutine ** plot_field_xzrs **
 parsing subroutine ** plot_field_xzrl **
 parsing subroutine ** plot_field_yzrs **
 parsing subroutine ** plot_field_yzrl **
 parsing subroutine ** pressure_for_eos **
 parsing subroutine ** quasihydrostaticterms **
 parsing subroutine ** solve_for_pressure **
 parsing subroutine ** state_summary **
 parsing subroutine ** timestep **
 parsing subroutine ** the_correction_step **
 parsing subroutine ** the_main_loop **
 parsing subroutine ** thermodynamics **
 parsing subroutine ** timestep_tracer **
 parsing subroutine ** update_etah **
 parsing subroutine ** swfrac **
 parsing subroutine ** gmredi_calc_diff **
 parsing subroutine ** gmredi_calc_psi_b **
 parsing subroutine ** gmredi_calc_tensor **
 parsing subroutine ** gmredi_calc_tensor_dummy **
 parsing subroutine ** gmredi_calc_uvflow **
 parsing subroutine ** gmredi_calc_wflow **
 parsing subroutine ** gmredi_diags **
 parsing subroutine ** gmredi_init **
 parsing subroutine ** gmredi_rtransport **
 parsing subroutine ** gmredi_slope_limit **
 parsing subroutine ** gmredi_slope_psi **
 parsing subroutine ** gmredi_xtransport **
 parsing subroutine ** gmredi_ytransport **
 parsing subroutine ** ctrl_init_variables **
 parsing subroutine ** ctrl_map_ini **
 parsing subroutine ** ctrl_map_forcing **
 parsing subroutine ** cost_final **
 parsing subroutine ** cost_initvaria **
 parsing subroutine ** cost_tile **
 parsing subroutine ** cost_test **
 parsing subroutine ** cost_tracer **
 parsing subroutine ** cost_atlantic_heat **
 parsing subroutine ** cost_vector **
 parsing subroutine ** kpp_calc **
 parsing subroutine ** kpp_calc_dummy **
 parsing subroutine ** kpp_calc_diff **
 parsing subroutine ** kpp_calc_visc **
 parsing subroutine ** kpp_do_diags **
 parsing subroutine ** kpp_init **
 parsing subroutine ** kpp_open_diags **
 parsing subroutine ** kppmix **
 parsing subroutine ** bldepth **
 parsing subroutine ** wscale **
 parsing subroutine ** ri_iwmix **
 parsing subroutine ** z121 **
 parsing subroutine ** kpp_smooth_horiz **
 parsing subroutine ** smooth_horiz **
 parsing subroutine ** blmix **
 parsing subroutine ** enhance **
 parsing subroutine ** statekpp **
 parsing subroutine ** kpp_transport_s **
 parsing subroutine ** kpp_transport_t **

=========================================
 semantic analysis
=========================================

=========================================
 normalization
=========================================

=========================================
 control flow analysis
=========================================

=========================================
 data dependence analysis
=========================================
TAMC INFO    tamc_code.f:119728 :  general assignment found
TAMC INFO    tamc_code.f:119786 :  general assignment found

 Code of subroutine cal_getmonthsrec not seen and no flow information set,
 assume all arguments are input and output
 Code of subroutine exf_getforcing not seen and no flow information set,
 assume all arguments are input and output
 Code of subroutine exf_init not seen and no flow information set,
 assume all arguments are input and output
 Code of subroutine rbc not seen and no flow information set,
 assume all arguments are input and output
 Code of subroutine rbc_init not seen and no flow information set,
 assume all arguments are input and output

=========================================
 global data flow analysis
=========================================
TAMC WARNING tamc_code.f:207554 : could not find corresponding open
 determine required routines and statements for subroutine : the_main_loop
 dependent variable(s) = 
 fc

 the cost function does not depend on the variable(s) :
 xx_diffkr_dummy xx_efluxp_dummy xx_efluxy_dummy xx_hflux_dummy xx_kapgm_dummy xx_sflux_dummy xx_sss_dummy xx_sst_dummy xx_tauu_dummy xx_tauv_dummy xx_tr1_dummy

 determine dependent routines and statements :
 independent variable(s) = 
 xx_salt_dummy xx_theta_dummy

 the independent variable(s) are :
 xx_salt_dummy xx_theta_dummy

 the dependent variable(s) are   :
 fc

TAMC WARNING: toplevel routine overwrites the input variables:
 climsalt climtemp mythid

=========================================
 generate adjoint common blocks
=========================================
 original   common block (    2): controlvars_r
 derivative common block (    1): adcontrolvars_r
 original   common block (   18): cost_r
 derivative common block (    2): adcost_r
 original   common block (   35): ctrl_dummy
 derivative common block (    2): adctrl_dummy
 original   common block (    2): dynvars_diag
 derivative common block (    1): addynvars_diag
 original   common block (   15): dynvars_r
 derivative common block (   14): addynvars_r
 original   common block (    3): gm_wtensor
 derivative common block (    3): adgm_wtensor
 original   common block (    5): kpp
 derivative common block (    5): adkpp
 original   common block (    1): kpp_short
 derivative common block (    1): adkpp_short
 original   common block (    2): sfp_common_r8
 derivative common block (    2): adsfp_common_r8
 original   common block (    5): tendency_forcing
 derivative common block (    2): adtendency_forcing

=========================================
 generate adjoint routines
=========================================
 begin generate adjoint computations of : the_main_loop
 begin generate adjoint computations of : cost_final
 begin generate adjoint computations of : cost_atlantic_heat
 end   generate adjoint computations of : cost_atlantic_heat
 end   generate adjoint computations of : cost_final
 begin generate adjoint computations of : forward_step
 begin generate adjoint computations of : do_fields_blocking_exchanges
 end   generate adjoint computations of : do_fields_blocking_exchanges
 begin generate adjoint computations of : the_correction_step
 begin generate adjoint computations of : integr_continuity
 begin generate adjoint computations of : integrate_for_w
 end   generate adjoint computations of : integrate_for_w
 end   generate adjoint computations of : integr_continuity
 begin generate adjoint computations of : cycle_tracer
 end   generate adjoint computations of : cycle_tracer
 begin generate adjoint computations of : correction_step
 end   generate adjoint computations of : correction_step
 begin generate adjoint computations of : calc_grad_phi_surf
 end   generate adjoint computations of : calc_grad_phi_surf
 end   generate adjoint computations of : the_correction_step
 begin generate adjoint computations of : solve_for_pressure
TAMC INFO    tamc_code.f:439664 : subroutine cg2d is self adjoint
TAMC WARNING tamc_code.f:439664 : self adjoint routine has more than one active input
TAMC WARNING tamc_code.f:439664 : adjoint input variable adcg2d_x will be reset
 begin generate adjoint computations of : calc_div_ghat
 end   generate adjoint computations of : calc_div_ghat
 end   generate adjoint computations of : solve_for_pressure
 begin generate adjoint computations of : dynamics
 begin generate adjoint computations of : impldiff
TAMC INFO DOLOOP_STMT tamc_code.f:199257 in impldiff
 handled as sequential loop, only flow dependencies for : gynm1
TAMC INFO DOLOOP_STMT tamc_code.f:199245 in impldiff
 handled as sequential loop, only flow dependencies for : gynm1
TAMC INFO DOLOOP_STMT tamc_code.f:199224 in impldiff
 handled as sequential loop, only flow dependencies for : bet
 end   generate adjoint computations of : impldiff
 begin generate adjoint computations of : timestep
 begin generate adjoint computations of : external_forcing_v
 end   generate adjoint computations of : external_forcing_v
 begin generate adjoint computations of : external_forcing_u
 end   generate adjoint computations of : external_forcing_u
 end   generate adjoint computations of : timestep
 begin generate adjoint computations of : mom_vecinv
 begin generate adjoint computations of : mom_vi_v_grad_ke
 end   generate adjoint computations of : mom_vi_v_grad_ke
 begin generate adjoint computations of : mom_vi_u_grad_ke
 end   generate adjoint computations of : mom_vi_u_grad_ke
 begin generate adjoint computations of : mom_vi_v_vertshear
 end   generate adjoint computations of : mom_vi_v_vertshear
 begin generate adjoint computations of : mom_vi_u_vertshear
 end   generate adjoint computations of : mom_vi_u_vertshear
 begin generate adjoint computations of : mom_vi_v_coriolis
 end   generate adjoint computations of : mom_vi_v_coriolis
 begin generate adjoint computations of : mom_vi_u_coriolis
 end   generate adjoint computations of : mom_vi_u_coriolis
 begin generate adjoint computations of : mom_vi_coriolis
 end   generate adjoint computations of : mom_vi_coriolis
 begin generate adjoint computations of : mom_v_bottomdrag
 end   generate adjoint computations of : mom_v_bottomdrag
 begin generate adjoint computations of : mom_v_sidedrag
 end   generate adjoint computations of : mom_v_sidedrag
 begin generate adjoint computations of : mom_v_rviscflux
 end   generate adjoint computations of : mom_v_rviscflux
 begin generate adjoint computations of : mom_u_bottomdrag
 end   generate adjoint computations of : mom_u_bottomdrag
 begin generate adjoint computations of : mom_u_sidedrag
 end   generate adjoint computations of : mom_u_sidedrag
 begin generate adjoint computations of : mom_u_rviscflux
 end   generate adjoint computations of : mom_u_rviscflux
 begin generate adjoint computations of : mom_hdissip
 end   generate adjoint computations of : mom_hdissip
 begin generate adjoint computations of : mom_calc_strain
 end   generate adjoint computations of : mom_calc_strain
 begin generate adjoint computations of : mom_calc_tension
 end   generate adjoint computations of : mom_calc_tension
 begin generate adjoint computations of : mom_vi_hdissip
 end   generate adjoint computations of : mom_vi_hdissip
 begin generate adjoint computations of : mom_vi_calc_relvort3
 end   generate adjoint computations of : mom_vi_calc_relvort3
 begin generate adjoint computations of : mom_vi_calc_hdiv
 end   generate adjoint computations of : mom_vi_calc_hdiv
 begin generate adjoint computations of : mom_vi_del2uv
 end   generate adjoint computations of : mom_vi_del2uv
 begin generate adjoint computations of : mom_vi_calc_ke
 end   generate adjoint computations of : mom_vi_calc_ke
 end   generate adjoint computations of : mom_vecinv
 begin generate adjoint computations of : mom_fluxform
 begin generate adjoint computations of : mom_u_coriolis_nh
 end   generate adjoint computations of : mom_u_coriolis_nh
 begin generate adjoint computations of : mom_v_coriolis
 end   generate adjoint computations of : mom_v_coriolis
 begin generate adjoint computations of : mom_u_coriolis
 end   generate adjoint computations of : mom_u_coriolis
 begin generate adjoint computations of : mom_v_metric_sphere
 end   generate adjoint computations of : mom_v_metric_sphere
 begin generate adjoint computations of : mom_v_metric_nh
 end   generate adjoint computations of : mom_v_metric_nh
 begin generate adjoint computations of : mom_v_adv_wv
 end   generate adjoint computations of : mom_v_adv_wv
 begin generate adjoint computations of : mom_v_yviscflux
 end   generate adjoint computations of : mom_v_yviscflux
 begin generate adjoint computations of : mom_v_adv_vv
 end   generate adjoint computations of : mom_v_adv_vv
 begin generate adjoint computations of : mom_v_xviscflux
 end   generate adjoint computations of : mom_v_xviscflux
 begin generate adjoint computations of : mom_v_adv_uv
 end   generate adjoint computations of : mom_v_adv_uv
 begin generate adjoint computations of : mom_v_del2v
 end   generate adjoint computations of : mom_v_del2v
 begin generate adjoint computations of : mom_u_metric_sphere
 end   generate adjoint computations of : mom_u_metric_sphere
 begin generate adjoint computations of : mom_u_metric_nh
 end   generate adjoint computations of : mom_u_metric_nh
 begin generate adjoint computations of : mom_u_adv_wu
 end   generate adjoint computations of : mom_u_adv_wu
 begin generate adjoint computations of : mom_u_yviscflux
 end   generate adjoint computations of : mom_u_yviscflux
 begin generate adjoint computations of : mom_u_adv_vu
 end   generate adjoint computations of : mom_u_adv_vu
 begin generate adjoint computations of : mom_u_xviscflux
 end   generate adjoint computations of : mom_u_xviscflux
 begin generate adjoint computations of : mom_u_adv_uu
 end   generate adjoint computations of : mom_u_adv_uu
 begin generate adjoint computations of : mom_u_del2u
 end   generate adjoint computations of : mom_u_del2u
 begin generate adjoint computations of : mom_calc_rtrans
 end   generate adjoint computations of : mom_calc_rtrans
TAMC INFO     avoiding recomputation of : help_h
TAMC INFO     avoiding recomputation of : rtransu,rtransv
 begin generate adjoint computations of : mom_calc_ke
 end   generate adjoint computations of : mom_calc_ke
 end   generate adjoint computations of : mom_fluxform
 begin generate adjoint computations of : calc_phi_hyd
 begin generate adjoint computations of : calc_grad_phi_hyd
 end   generate adjoint computations of : calc_grad_phi_hyd
 begin generate adjoint computations of : diags_phi_hyd
 end   generate adjoint computations of : diags_phi_hyd
 begin generate adjoint computations of : find_rho
 begin generate adjoint computations of : find_bulkmod
 end   generate adjoint computations of : find_bulkmod
 begin generate adjoint computations of : find_rhop0
 end   generate adjoint computations of : find_rhop0
 begin generate adjoint computations of : pressure_for_eos
 end   generate adjoint computations of : pressure_for_eos
 begin generate adjoint computations of : find_rhoden
 end   generate adjoint computations of : find_rhoden
 begin generate adjoint computations of : find_rhonum
 end   generate adjoint computations of : find_rhonum
 end   generate adjoint computations of : find_rho
 begin generate adjoint computations of : quasihydrostaticterms
 end   generate adjoint computations of : quasihydrostaticterms
 end   generate adjoint computations of : calc_phi_hyd
 begin generate adjoint computations of : calc_viscosity
 begin generate adjoint computations of : kpp_calc_visc
 end   generate adjoint computations of : kpp_calc_visc
 end   generate adjoint computations of : calc_viscosity
 end   generate adjoint computations of : dynamics
 begin generate adjoint computations of : do_stagger_fields_exchanges
 end   generate adjoint computations of : do_stagger_fields_exchanges
 begin generate adjoint computations of : thermodynamics
 begin generate adjoint computations of : freeze
 end   generate adjoint computations of : freeze
 begin generate adjoint computations of : timestep_tracer
 end   generate adjoint computations of : timestep_tracer
TAMC INFO     avoiding recomputation of : bi,bj,imax,imin,jmax,jmin,k
 begin generate adjoint computations of : calc_gs
 begin generate adjoint computations of : external_forcing_s
 end   generate adjoint computations of : external_forcing_s
 begin generate adjoint computations of : adams_bashforth2
 end   generate adjoint computations of : adams_bashforth2
TAMC RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:24678 in calc_gs
 triggered by      : bi,bj,imax,imin,jmax,jmin,k
 still to be reset : bi,bj,imax,imin,jmax,jmin,k
 begin generate adjoint computations of : gad_calc_rhs
 begin generate adjoint computations of : kpp_transport_s
 end   generate adjoint computations of : kpp_transport_s
 begin generate adjoint computations of : kpp_transport_t
 end   generate adjoint computations of : kpp_transport_t
 begin generate adjoint computations of : gmredi_rtransport
 end   generate adjoint computations of : gmredi_rtransport
 begin generate adjoint computations of : gad_diff_r
 end   generate adjoint computations of : gad_diff_r
 begin generate adjoint computations of : gad_fluxlimit_adv_r
 end   generate adjoint computations of : gad_fluxlimit_adv_r
 begin generate adjoint computations of : gad_u3_adv_r
 end   generate adjoint computations of : gad_u3_adv_r
 begin generate adjoint computations of : gad_c4_adv_r
 end   generate adjoint computations of : gad_c4_adv_r
 begin generate adjoint computations of : gad_dst3_adv_r
 end   generate adjoint computations of : gad_dst3_adv_r
 begin generate adjoint computations of : gad_dst3fl_adv_r
 end   generate adjoint computations of : gad_dst3fl_adv_r
 begin generate adjoint computations of : gad_c2_adv_r
 end   generate adjoint computations of : gad_c2_adv_r
 begin generate adjoint computations of : gad_biharm_y
 end   generate adjoint computations of : gad_biharm_y
 begin generate adjoint computations of : gmredi_ytransport
 end   generate adjoint computations of : gmredi_ytransport
 begin generate adjoint computations of : gad_diff_y
 end   generate adjoint computations of : gad_diff_y
 begin generate adjoint computations of : gad_fluxlimit_adv_y
 end   generate adjoint computations of : gad_fluxlimit_adv_y
 begin generate adjoint computations of : gad_u3_adv_y
 end   generate adjoint computations of : gad_u3_adv_y
 begin generate adjoint computations of : gad_c4_adv_y
 end   generate adjoint computations of : gad_c4_adv_y
 begin generate adjoint computations of : gad_dst3_adv_y
 end   generate adjoint computations of : gad_dst3_adv_y
 begin generate adjoint computations of : gad_dst3fl_adv_y
 end   generate adjoint computations of : gad_dst3fl_adv_y
 begin generate adjoint computations of : gad_c2_adv_y
 end   generate adjoint computations of : gad_c2_adv_y
 begin generate adjoint computations of : gad_biharm_x
 end   generate adjoint computations of : gad_biharm_x
 begin generate adjoint computations of : gmredi_xtransport
 end   generate adjoint computations of : gmredi_xtransport
 begin generate adjoint computations of : gad_diff_x
 end   generate adjoint computations of : gad_diff_x
 begin generate adjoint computations of : gad_fluxlimit_adv_x
 end   generate adjoint computations of : gad_fluxlimit_adv_x
 begin generate adjoint computations of : gad_u3_adv_x
 end   generate adjoint computations of : gad_u3_adv_x
 begin generate adjoint computations of : gad_c4_adv_x
 end   generate adjoint computations of : gad_c4_adv_x
 begin generate adjoint computations of : gad_dst3_adv_x
 end   generate adjoint computations of : gad_dst3_adv_x
 begin generate adjoint computations of : gad_dst3fl_adv_x
 end   generate adjoint computations of : gad_dst3fl_adv_x
 begin generate adjoint computations of : gad_c2_adv_x
 end   generate adjoint computations of : gad_c2_adv_x
 begin generate adjoint computations of : gad_del2
 end   generate adjoint computations of : gad_del2
 begin generate adjoint computations of : gad_grad_y
 end   generate adjoint computations of : gad_grad_y
 begin generate adjoint computations of : gad_grad_x
 end   generate adjoint computations of : gad_grad_x
 end   generate adjoint computations of : gad_calc_rhs
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:24669 in calc_gs
 triggered by      : salt
 still to be reset : salt
TAMC INFO     saving of arguments inserted
 end   generate adjoint computations of : calc_gs
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:459281 in thermodynamics
 triggered by      : bi,bj,exf_clim_salt_r1,fvers,gs,imax,imin,jmax,jmin,k,mythid,mytime,salt
 still to be reset : bi,bj,exf_clim_salt_r1,fvers,gs,imax,imin,jmax,jmin,k,mythid,mytime,salt
TAMC RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:459280 in thermodynamics
 triggered by      : bi,bj,exf_clim_salt_r1,fvers,gs,imax,imin,jmax,jmin,k,mythid,mytime,salt
 still to be reset : bi,bj,exf_clim_salt_r1,fvers,gs,k,mythid,mytime,salt
TAMC INFO     avoiding recomputation of : bi,bj,imax,imin,jmax,jmin,k
 begin generate adjoint computations of : calc_gt
 begin generate adjoint computations of : external_forcing_t
 end   generate adjoint computations of : external_forcing_t
TAMC RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:26934 in calc_gt
 triggered by      : bi,bj,imax,imin,jmax,jmin,k
 still to be reset : bi,bj,imax,imin,jmax,jmin,k
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:26925 in calc_gt
 triggered by      : theta
 still to be reset : theta
TAMC INFO     saving of arguments inserted
 end   generate adjoint computations of : calc_gt
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:459266 in thermodynamics
 triggered by      : bi,bj,exf_clim_temp_r1,fvert,gt,imax,imin,jmax,jmin,k,mythid,mytime,theta
 still to be reset : bi,bj,exf_clim_temp_r1,fvert,gt,imax,imin,jmax,jmin,k,mythid,mytime,theta
TAMC RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:459265 in thermodynamics
 triggered by      : bi,bj,exf_clim_temp_r1,fvert,gt,imax,imin,jmax,jmin,k,mythid,mytime,theta
 still to be reset : bi,bj,exf_clim_temp_r1,fvert,gt,k,mythid,mytime,theta
 begin generate adjoint computations of : calc_diffusivity
 begin generate adjoint computations of : kpp_calc_diff
 end   generate adjoint computations of : kpp_calc_diff
 begin generate adjoint computations of : gmredi_calc_diff
 end   generate adjoint computations of : gmredi_calc_diff
 end   generate adjoint computations of : calc_diffusivity
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:459251 in thermodynamics
 triggered by      : bi,bj,imax,imin,jmax,jmin,k
 still to be reset : bi,bj,k
 begin generate adjoint computations of : calc_common_factors
 end   generate adjoint computations of : calc_common_factors
TAMC RECOMPUTATION 2 WARNING DOLOOP_STMT tamc_code.f:459201 in thermodynamics
 extensive recomputations are required.
 The responsible variables are : bi,bj,exf_clim_salt_r1,exf_clim_temp_r1,fvers,fvert,gs,gsnm1,gt,gtnm1,k,mythid,mytime,salt,theta
TAMC RECOMPUTATION 1 WARNING DOLOOP_STMT tamc_code.f:459201 in thermodynamics
 triggered by      : bi,bj,exf_clim_salt_r1,exf_clim_temp_r1,fvers,fvert,gs,gsnm1,gt,gtnm1,kappars,kappart,mythid,mytime,salt,theta
 still to be reset : bi,bj,exf_clim_salt_r1,exf_clim_temp_r1,gsnm1,gtnm1,mythid,mytime
TAMC RECOMPUTATION 1 WARNING DOLOOP_STMT tamc_code.f:458858 in thermodynamics
 triggered by      : bi,bj,exf_clim_salt_r1,exf_clim_temp_r1,gsnm1,gtnm1,mythid,mytime
 still to be reset : bi,bj,exf_clim_salt_r1,exf_clim_temp_r1,gsnm1,gtnm1,mythid,mytime
 begin generate adjoint computations of : gad_advection
TAMC INFO     avoiding recomputation of : rtrans
 end   generate adjoint computations of : gad_advection
TAMC RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:459182 in thermodynamics
 triggered by      : bi,bj,mythid,salt
 still to be reset : bi,bj,mythid,mytime
TAMC RECOMPUTATION 1 WARNING DOLOOP_STMT tamc_code.f:458858 in thermodynamics
 triggered by      : bi,bj,mythid,mytime
 still to be reset : bi,bj,mythid,mytime
 begin generate adjoint computations of : kpp_calc
 begin generate adjoint computations of : swfrac
 end   generate adjoint computations of : swfrac
 begin generate adjoint computations of : kppmix
 begin generate adjoint computations of : enhance
 end   generate adjoint computations of : enhance
 begin generate adjoint computations of : blmix
 begin generate adjoint computations of : wscale
 end   generate adjoint computations of : wscale
 end   generate adjoint computations of : blmix
 begin generate adjoint computations of : bldepth
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:564301 in bldepth
 triggered by      : mythid,mytime,worka
 still to be reset : mythid,mytime
TAMC RECOMPUTATION 1 WARNING DOLOOP_STMT tamc_code.f:564238 in bldepth
 triggered by      : worka
 still to be reset : mythid,mytime
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:564233 in bldepth
 triggered by      : mythid,mytime,worka
 still to be reset : mythid,mytime
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:564135 in bldepth
 triggered by      : mythid,mytime,worka
 still to be reset : mythid,mytime
TAMC RECOMPUTATION 2 WARNING DOLOOP_STMT tamc_code.f:564128 in bldepth
 extensive recomputations are required.
 The responsible variables are : mythid,mytime
TAMC RECOMPUTATION 1 WARNING DOLOOP_STMT tamc_code.f:564128 in bldepth
 triggered by      : mythid,mytime
 still to be reset : mythid,mytime
TAMC INFO     saving of arguments inserted
 end   generate adjoint computations of : bldepth
 begin generate adjoint computations of : ri_iwmix
 end   generate adjoint computations of : ri_iwmix
 end   generate adjoint computations of : kppmix
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:543613 in kpp_calc
 triggered by      : mythid,mytime
 still to be reset : mythid,mytime
TAMPascal system error -2 (out of memory)
C RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:543346 in kpp_calc
 triggered by      : mythid,mytime
 still to be reset : mythid,mytime
 begin generate adjoint computations of : kpp_smooth_horiz
 end   generate adjoint computations of : kpp_smooth_horiz
 begin generate adjoint computations of : statekpp
 begin generate adjoint computations of : find_beta
 end   generate adjoint computations of : find_beta
 begin generate adjoint computations of : find_alpha
 end   generate adjoint computations of : find_alpha
 end   generate adjoint computations of : statekpp
TAMC INFO     saving of arguments inserted
 end   generate adjoint computations of : kpp_calc
TAMC RECOMPUTATION 1 WARNING CALL_STMT tamc_code.f:459132 in thermodynamics
 triggered by      : mythid,mytime
 still to be reset : mythid,mytime
TAMC RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:459128 in thermodynamics
 triggered by      : mythid,mytime
 still to be reset : mythid,mytime
TAMC RECOMPUTATION 1 WARNING DOLOOP_STMT tamc_code.f:458858 in thermodynamics
 triggered by      : mythid,mytime
 still to be reset : mythid,mytime
 begin generate adjoint computations of : kpp_calc_dummy
 end   generate adjoint computations of : kpp_calc_dummy
 begin generate adjoint computations of : gmredi_calc_tensor
 begin generate adjoint computations of : gmredi_slope_limit
TAMC INFO     avoiding recomputation of : drdsigmaltd
TAMC RECOMPUTATION 1 WARNING ASSIGN_STMT tamc_code.f:498072 in gmredi_slope_limit
 triggered by      : drdsigmaltd
 still to be reset : drdsigmaltd
TAMC RECOMPUTATION 1 WARNING DOLOOP_STMT tamc_code.f:498010 in gmredi_slope_limit
 triggered by      : dsigmadrreal
 still to be reset : dsigmadrreal
TAMC RECOMPUTATION 1 WARNING IF_STMT tamc_code.f:497984 in gmredi_slope_limit
 triggered by      : dsigmadrreal
 still to be reset : dsigmadrreal
-------------- next part --------------

C 
C CPP flags controlling which code is included in the files that
C will be compiled.
C
C ********************************************************************
C ***                         ECCO Package                         ***
C ********************************************************************
C
C o include dump of snap shots for checks
#undef ALLOW_SNAPSHOTS

#define  ALLOW_ECCO_FORWARD_RUN
#undef  ALLOW_ECCO_DIAGNOSTICS_RUN
C should it be allowed? bzhao 10/29/03
#undef  ALLOW_ECCO_ADJOINT_RUN
#undef  ALLOW_ECCO_GRADIENT_CHECK
#undef  ALLOW_ECCO_OPTIMIZATION

C       >>> Do a long protocol.
#undef ECCO_VERBOSE

C       >>> Just do a "dry" run ( useful for testing ).
#undef  ALLOW_NO_DYNAMICS
C       >>> Use the Yearly-Monthly-Daily-Stepping call tree.
#undef  ALLOW_YMDS_TREE
C       >>> Do not call stepping
#define ALLOW_STEPPING_CALL

C ********************************************************************
C ***                  Adjoint Support Package                     ***
C ********************************************************************

C o Include/exclude code in order to be able to automatically
C   differentiate the MITgcmUV by using the Tangent Linear and
C   Adjoint Model Compiler (TAMC).
#undef INCLUDE_AUTODIFF_PACKAGE
C
C   switch on ALLOW_AUTODIFF_TAMC by bzhao 10/29/03
C   originally switched off
#define ALLOW_AUTODIFF_TAMC

C       >>> Checkpointing as handled by TAMC
C   Also switch on by bzhao 10/29/03
C   originally switched off
#define ALLOW_TAMC_CHECKPOINTING
#undef ALLOW_AUTODIFF_MONITOR
C o use divided adjoint to split adjoint computations
#undef ALLOW_DIVIDED_ADJOINT

C ********************************************************************
C ***                     Calendar Package                         ***
C ********************************************************************
C 
C CPP flags controlling which code is included in the files that
C will be compiled.
C

C o Include the calendar tool.
C  why include calendar tool here? bzhao 10/29/03
#define ALLOW_CALENDAR
#define ALLOW_CAL_NENDITER

C ********************************************************************
C ***                Cost function Package                         ***
C ********************************************************************
C 
C       >>> Use the EGM-96 geoid error covariance.
#undef  ALLOW_EGM96_ERROR_COV
#undef  ALLOW_READ_EGM_DATA
C       >>> Use NSCAT data.
#undef  ALLOW_NSCAT_DATA
C       >>> Cost function contributions

C     add by bzhao 02/13/04
#define ALLOW_COST
C     only contribution to cost function is North Atlantic 
C     heat transport. Modifying the example file is easy.  
#define ALLOW_COST_ATLANTIC_HEAT
C     end bzhao add

#undef ALLOW_HFLUX_COST_CONTRIBUTION
#undef ALLOW_SFLUX_COST_CONTRIBUTION
#undef ALLOW_USTRESS_COST_CONTRIBUTION
#undef ALLOW_VSTRESS_COST_CONTRIBUTION
#undef ALLOW_THETA_COST_CONTRIBUTION
#undef ALLOW_SALT_COST_CONTRIBUTION
#undef ALLOW_SST_COST_CONTRIBUTION
#undef ALLOW_SSH_COST_CONTRIBUTION
#undef ALLOW_CTDT_COST_CONTRIBUTION
#undef ALLOW_CTDS_COST_CONTRIBUTION
#undef ALLOW_COST_ATLANTIC
C       >>> Projection onto Spherical Harmonics
#undef  ALLOW_SPH_PROJECTION

C ********************************************************************
C ***               Control vector Package                         ***
C ********************************************************************
C 
#undef  ALLOW_NONDIMENSIONAL_CONTROL_IO
C       >>> Replace hooks for the control variables.
#ifdef INCLUDE_ECCO_PACKAGE
#define _GET_HFLUX_CONTROL(a,b,c)   call ctrl_getheatflux(a,b,c)
#define _GET_SFLUX_CONTROL(a,b,c)   call ctrl_getsaltflux(a,b,c)
#define _GET_USTRESS_CONTROL(a,b,c) call ctrl_getzonstress(a,b,c)
#define _GET_VSTRESS_CONTROL(a,b,c) call ctrl_getmerstress(a,b,c)
#define _GET_SWFLUX_CONTROL(a,b,c)
#define _GET_LWFLUX_CONTROL(a,b,c)
#else
#define _GET_HFLUX_CONTROL(a,b,c)
#define _GET_SFLUX_CONTROL(a,b,c)
#define _GET_USTRESS_CONTROL(a,b,c)
#define _GET_VSTRESS_CONTROL(a,b,c)
#define _GET_SWFLUX_CONTROL(a,b,c)
#define _GET_LWFLUX_CONTROL(a,b,c)
#endif

C       >>> Initial values.
C    add bzhao 01/08/04
#define ALLOW_THETA0_CONTROL
#define ALLOW_SALT0_CONTROL
C   end bzhao
C       >>> Surface fluxes.
C     heat flux is control variable  :bzhao 10/29/03
#undef ALLOW_HFLUX_CONTROL
#undef ALLOW_SFLUX_CONTROL
#undef ALLOW_USTRESS_CONTROL
#undef ALLOW_VSTRESS_CONTROL
C   end bzhao
#undef  ALLOW_SWFLUX_CONTROL
#undef  ALLOW_LWFLUX_CONTROL

C       >>> Atmospheric state.
#undef  ALLOW_ATEMP_CONTROL
#undef  ALLOW_AQH_CONTROL
#undef  ALLOW_UWIND_CONTROL
#undef  ALLOW_VWIND_CONTROL
#undef  ALLOW_PRECIP_CONTROL

C ********************************************************************
C ***             External forcing Package                         ***
C ********************************************************************
C 
C o Include/exclude the external forcing package. To use this package,
C   you have to include the calendar tool as well. KPP can be switched
C   on or off. The implementation automatically takes care of this.
#define INCLUDE_EXTERNAL_FORCING_PACKAGE

C   Do more printout for the protocol file than usual.
#undef  EXF_VERBOSE

C   Bulk formulae related flags.
#define ALLOW_BULKFORMULAE
#define ALLOW_ATM_TEMP
#define ALLOW_ATM_WIND
ctwnh add
#define ALLOW_DOWNWARD_RADIATION
#undef  ALLOW_RUNOFF
#undef  EXF_READ_EVAP
ctwnh end add

C   Relaxation to monthly climatologies.
#define ALLOW_CLIMTEMP_RELAXATION
#define ALLOW_CLIMSALT_RELAXATION
#define ALLOW_CLIMSST_RELAXATION
#define ALLOW_CLIMSSS_RELAXATION

C   Relaxation to constant surface fields.
#undef  ALLOW_CONST_SST_RELAXATION
#undef  ALLOW_CONST_SSS_RELAXATION


More information about the MITgcm-support mailing list