/[MITgcm]/MITgcm/adjoint/makefile
ViewVC logotype

Diff of /MITgcm/adjoint/makefile

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.7 by heimbach, Mon Jul 30 20:10:17 2001 UTC revision 1.21 by heimbach, Mon Feb 11 21:54:05 2002 UTC
# Line 2  SHELL           = /bin/tcsh Line 2  SHELL           = /bin/tcsh
2  RM               = rm -f  RM               = rm -f
3  LOC              = $(PWD)  LOC              = $(PWD)
4  TAMC             = tamc  TAMC             = tamc
5  TAF              = ~fastopt/bin/taf  ###TAMC             = /data43/ralf/tamc/tamc
6    TAF              = taf
7    ###TAF              = ~fastopt/taf-1.3.5/bin/taf
8  DEST             = .  DEST             = .
9  SOURCE_CODE      = ../bin  SOURCE_CODE      = ../bin
10  ADJOINT_SCRIPT   = ../adjoint  ADJOINT_SCRIPT   = ../adjoint
11  BASE             = ..  BASE             = ..
 TAMCFLAGS        = -reverse -i4 -r4  
 TAFFLAGS         = -reverse -i4 -r4  
12  PKG             = $(BASE)/pkg  PKG             = $(BASE)/pkg
13    #
14    ADTAMCFLAGS      = -reverse -admark ad -i4 -r4
15    ADTAFFLAGS       = -reverse -admark ad -i4 -r4 \
16                            -flow taf_flow.log -nonew_arg
17    FTLTAMCFLAGS     = -forward -ftlmark g_ -i4 -r4
18    FTLTAFFLAGS      = -forward -ftlmark g_ -i4 -r4 \
19                            -flow taf_flow.log -nonew_arg
20    SVDTAMCFLAGS     = -reverse -forward -pure -i4 -r4
21    SVDTAFFLAGS      = -reverse -forward -pure -i4 -r4 \
22                            -flow taf_flow.log -nonew_arg
23    #
24    # -warn_step -flow taf_flow.log
25    
26  DIFF_FLAGS       = -toplevel the_main_loop              \  DIFF_FLAGS       = -toplevel the_main_loop              \
27                     -input  '    xx_theta_dummy          \                     -input  '    xx_theta_dummy          \
# Line 20  DIFF_FLAGS       = -toplevel the_main_lo Line 32  DIFF_FLAGS       = -toplevel the_main_lo
32                                  xx_tauu_dummy           \                                  xx_tauu_dummy           \
33                                  xx_tauv_dummy           \                                  xx_tauv_dummy           \
34                                  xx_sss_dummy            \                                  xx_sss_dummy            \
35                                  xx_sst_dummy'           \                                  xx_sst_dummy            \
36                                    xx_diffkr_dummy         \
37                                    xx_kapgm_dummy'         \
38                     -output 'fc'                     -output 'fc'
39    #
40    #                   -output 'objf_vector'
41    #                   -output 'fc'
42    
43  TAMCFLAG         = $(TAMCFLAGS) $(DIFF_FLAGS) -admark ad  ADTAMCFLAG         = $(ADTAMCFLAGS) $(DIFF_FLAGS)
44    ADTAFFLAG          = $(ADTAFFLAGS)  $(DIFF_FLAGS)
45    
46  TAFFLAG          = $(TAFFLAGS) $(DIFF_FLAGS) -l list_uv -admark ad  FTLTAMCFLAG         = $(FTLTAMCFLAGS) $(DIFF_FLAGS)
47    FTLTAFFLAG          = $(FTLTAFFLAGS)  $(DIFF_FLAGS)
48    
49    SVDTAMCFLAG         = $(SVDTAMCFLAGS) $(DIFF_FLAGS)
50    SVDTAFFLAG          = $(SVDTAFFLAGS)  $(DIFF_FLAGS)
51    
52  # Source files for the MITgcmUV  # Source files for the MITgcmUV
53  SRC_MODEL       = \  SRC_MODEL       = \
# Line 55  SRC_MODEL      = \ Line 76  SRC_MODEL      = \
76                  $(PKG)/autodiff/open_copy_data_file.flow\                  $(PKG)/autodiff/open_copy_data_file.flow\
77                  $(PKG)/autodiff/timeave.flow            \                  $(PKG)/autodiff/timeave.flow            \
78                                                                  \                                                                  \
79                    $(SOURCE_CODE)/adams_bashforth2.f               \
80                  $(SOURCE_CODE)/calc_buoyancy.f                  \                  $(SOURCE_CODE)/calc_buoyancy.f                  \
81                  $(SOURCE_CODE)/calc_common_factors.f            \                  $(SOURCE_CODE)/calc_common_factors.f            \
82                  $(SOURCE_CODE)/calc_diffusivity.f               \                  $(SOURCE_CODE)/calc_diffusivity.f               \
83                  $(SOURCE_CODE)/calc_div_ghat.f                  \                  $(SOURCE_CODE)/calc_div_ghat.f                  \
84                    $(SOURCE_CODE)/calc_exact_eta.f                 \
85                  $(SOURCE_CODE)/calc_grad_phi_surf.f             \                  $(SOURCE_CODE)/calc_grad_phi_surf.f             \
86                  $(SOURCE_CODE)/calc_gs.f                        \                  $(SOURCE_CODE)/calc_gs.f                        \
87                  $(SOURCE_CODE)/calc_gt.f                        \                  $(SOURCE_CODE)/calc_gt.f                        \
88                  $(SOURCE_CODE)/calc_gtr1.f                      \                  $(SOURCE_CODE)/calc_gtr1.f                      \
89                  $(SOURCE_CODE)/calc_ivdc.f                      \                  $(SOURCE_CODE)/calc_ivdc.f                      \
                 $(SOURCE_CODE)/calc_mom_rhs.f                   \  
90                  $(SOURCE_CODE)/calc_phi_hyd.f                   \                  $(SOURCE_CODE)/calc_phi_hyd.f                   \
91                    $(SOURCE_CODE)/calc_viscosity.f                 \
92                  $(SOURCE_CODE)/comm_stats.f                     \                  $(SOURCE_CODE)/comm_stats.f                     \
93                  $(SOURCE_CODE)/convect.f                        \                  $(SOURCE_CODE)/convect.f                        \
94                  $(SOURCE_CODE)/convective_adjustment.f          \                  $(SOURCE_CODE)/convective_adjustment.f          \
# Line 82  SRC_MODEL      = \ Line 105  SRC_MODEL      = \
105                  $(SOURCE_CODE)/find_rho.f                       \                  $(SOURCE_CODE)/find_rho.f                       \
106                  $(SOURCE_CODE)/forward_step.f                   \                  $(SOURCE_CODE)/forward_step.f                   \
107                  $(SOURCE_CODE)/freeze.f                         \                  $(SOURCE_CODE)/freeze.f                         \
108                  $(SOURCE_CODE)/get_offline_fields.f             \                                                                  \
109                    $(SOURCE_CODE)/gad_advection.f                  \
110                  $(SOURCE_CODE)/gad_biharm_x.f                   \                  $(SOURCE_CODE)/gad_biharm_x.f                   \
111                  $(SOURCE_CODE)/gad_biharm_y.f                   \                  $(SOURCE_CODE)/gad_biharm_y.f                   \
112                  $(SOURCE_CODE)/gad_c2_adv_r.f                   \                  $(SOURCE_CODE)/gad_c2_adv_r.f                   \
# Line 96  SRC_MODEL      = \ Line 120  SRC_MODEL      = \
120                  $(SOURCE_CODE)/gad_diff_r.f                     \                  $(SOURCE_CODE)/gad_diff_r.f                     \
121                  $(SOURCE_CODE)/gad_diff_x.f                     \                  $(SOURCE_CODE)/gad_diff_x.f                     \
122                  $(SOURCE_CODE)/gad_diff_y.f                     \                  $(SOURCE_CODE)/gad_diff_y.f                     \
123                    $(SOURCE_CODE)/gad_dst3_adv_x.f                 \
124                    $(SOURCE_CODE)/gad_dst3_adv_y.f                 \
125                    $(SOURCE_CODE)/gad_dst3_adv_r.f                 \
126                    $(SOURCE_CODE)/gad_dst3fl_adv_x.f               \
127                    $(SOURCE_CODE)/gad_dst3fl_adv_y.f               \
128                    $(SOURCE_CODE)/gad_dst3fl_adv_r.f               \
129                  $(SOURCE_CODE)/gad_fluxlimit_adv_r.f            \                  $(SOURCE_CODE)/gad_fluxlimit_adv_r.f            \
130                  $(SOURCE_CODE)/gad_fluxlimit_adv_x.f            \                  $(SOURCE_CODE)/gad_fluxlimit_adv_x.f            \
131                  $(SOURCE_CODE)/gad_fluxlimit_adv_y.f            \                  $(SOURCE_CODE)/gad_fluxlimit_adv_y.f            \
# Line 104  SRC_MODEL      = \ Line 134  SRC_MODEL      = \
134                  $(SOURCE_CODE)/gad_u3_adv_r.f                   \                  $(SOURCE_CODE)/gad_u3_adv_r.f                   \
135                  $(SOURCE_CODE)/gad_u3_adv_x.f                   \                  $(SOURCE_CODE)/gad_u3_adv_x.f                   \
136                  $(SOURCE_CODE)/gad_u3_adv_y.f                   \                  $(SOURCE_CODE)/gad_u3_adv_y.f                   \
137                                                                    \
138                  $(SOURCE_CODE)/grad_sigma.f                     \                  $(SOURCE_CODE)/grad_sigma.f                     \
139                  $(SOURCE_CODE)/impldiff.f                       \                  $(SOURCE_CODE)/impldiff.f                       \
140                    $(SOURCE_CODE)/ini_autodiff.f                   \
141                  $(SOURCE_CODE)/ini_cartesian_grid.f             \                  $(SOURCE_CODE)/ini_cartesian_grid.f             \
142                  $(SOURCE_CODE)/ini_cg2d.f                       \                  $(SOURCE_CODE)/ini_cg2d.f                       \
143                  $(SOURCE_CODE)/ini_communication_patterns.f     \                  $(SOURCE_CODE)/ini_communication_patterns.f     \
# Line 115  SRC_MODEL      = \ Line 147  SRC_MODEL      = \
147                  $(SOURCE_CODE)/ini_fields.f                     \                  $(SOURCE_CODE)/ini_fields.f                     \
148                  $(SOURCE_CODE)/ini_forcing.f                    \                  $(SOURCE_CODE)/ini_forcing.f                    \
149                  $(SOURCE_CODE)/ini_grid.f                       \                  $(SOURCE_CODE)/ini_grid.f                       \
150                    $(SOURCE_CODE)/ini_linear_phisurf.f             \
151                  $(SOURCE_CODE)/ini_masks_etc.f                  \                  $(SOURCE_CODE)/ini_masks_etc.f                  \
152                    $(SOURCE_CODE)/ini_mixing.f                     \
153                  $(SOURCE_CODE)/ini_p_ground.f                   \                  $(SOURCE_CODE)/ini_p_ground.f                   \
154                  $(SOURCE_CODE)/ini_pnh.f                        \                  $(SOURCE_CODE)/ini_pnh.f                        \
                 $(SOURCE_CODE)/ini_procs.f                      \  
155                  $(SOURCE_CODE)/ini_psurf.f                      \                  $(SOURCE_CODE)/ini_psurf.f                      \
156                  $(SOURCE_CODE)/ini_salt.f                       \                  $(SOURCE_CODE)/ini_salt.f                       \
157                  $(SOURCE_CODE)/ini_spherical_polar_grid.f       \                  $(SOURCE_CODE)/ini_spherical_polar_grid.f       \
# Line 130  SRC_MODEL      = \ Line 163  SRC_MODEL      = \
163                  $(SOURCE_CODE)/initialise_varia.f               \                  $(SOURCE_CODE)/initialise_varia.f               \
164                  $(SOURCE_CODE)/integrate_for_w.f                \                  $(SOURCE_CODE)/integrate_for_w.f                \
165                  $(SOURCE_CODE)/modeldata_example.f              \                  $(SOURCE_CODE)/modeldata_example.f              \
166                                                                    \
167                    $(SOURCE_CODE)/mom_fluxform.f                   \
168                    $(SOURCE_CODE)/mom_hdissip.f                    \
169                    $(SOURCE_CODE)/mom_vecinv.f                     \
170                  $(SOURCE_CODE)/mom_calc_hfacz.f                 \                  $(SOURCE_CODE)/mom_calc_hfacz.f                 \
171                  $(SOURCE_CODE)/mom_calc_ke.f                    \                  $(SOURCE_CODE)/mom_calc_ke.f                    \
172                    $(SOURCE_CODE)/mom_calc_strain.f                \
173                    $(SOURCE_CODE)/mom_calc_tension.f               \
174                  $(SOURCE_CODE)/mom_cdscheme.f                   \                  $(SOURCE_CODE)/mom_cdscheme.f                   \
175                  $(SOURCE_CODE)/mom_u_adv_uu.f                   \                  $(SOURCE_CODE)/mom_u_adv_uu.f                   \
176                  $(SOURCE_CODE)/mom_u_adv_vu.f                   \                  $(SOURCE_CODE)/mom_u_adv_vu.f                   \
177                  $(SOURCE_CODE)/mom_u_adv_wu.f                   \                  $(SOURCE_CODE)/mom_u_adv_wu.f                   \
178                  $(SOURCE_CODE)/mom_u_bottomdrag.f               \                  $(SOURCE_CODE)/mom_u_bottomdrag.f               \
179                    $(SOURCE_CODE)/mom_u_coriolis.f                 \
180                  $(SOURCE_CODE)/mom_u_del2u.f                    \                  $(SOURCE_CODE)/mom_u_del2u.f                    \
181                  $(SOURCE_CODE)/mom_u_metric_nh.f                \                  $(SOURCE_CODE)/mom_u_metric_nh.f                \
182                  $(SOURCE_CODE)/mom_u_metric_sphere.f            \                  $(SOURCE_CODE)/mom_u_metric_sphere.f            \
# Line 148  SRC_MODEL      = \ Line 188  SRC_MODEL      = \
188                  $(SOURCE_CODE)/mom_v_adv_vv.f                   \                  $(SOURCE_CODE)/mom_v_adv_vv.f                   \
189                  $(SOURCE_CODE)/mom_v_adv_wv.f                   \                  $(SOURCE_CODE)/mom_v_adv_wv.f                   \
190                  $(SOURCE_CODE)/mom_v_bottomdrag.f               \                  $(SOURCE_CODE)/mom_v_bottomdrag.f               \
191                    $(SOURCE_CODE)/mom_v_coriolis.f                 \
192                  $(SOURCE_CODE)/mom_v_del2v.f                    \                  $(SOURCE_CODE)/mom_v_del2v.f                    \
193                  $(SOURCE_CODE)/mom_v_metric_nh.f                \                  $(SOURCE_CODE)/mom_v_metric_nh.f                \
194                  $(SOURCE_CODE)/mom_v_metric_sphere.f            \                  $(SOURCE_CODE)/mom_v_metric_sphere.f            \
# Line 155  SRC_MODEL      = \ Line 196  SRC_MODEL      = \
196                  $(SOURCE_CODE)/mom_v_sidedrag.f                 \                  $(SOURCE_CODE)/mom_v_sidedrag.f                 \
197                  $(SOURCE_CODE)/mom_v_xviscflux.f                \                  $(SOURCE_CODE)/mom_v_xviscflux.f                \
198                  $(SOURCE_CODE)/mom_v_yviscflux.f                \                  $(SOURCE_CODE)/mom_v_yviscflux.f                \
199                    $(SOURCE_CODE)/mom_vi_calc_absvort3.f           \
200                    $(SOURCE_CODE)/mom_vi_calc_hdiv.f               \
201                    $(SOURCE_CODE)/mom_vi_calc_ke.f                 \
202                    $(SOURCE_CODE)/mom_vi_calc_relvort3.f           \
203                    $(SOURCE_CODE)/mom_vi_coriolis.f                \
204                    $(SOURCE_CODE)/mom_vi_del2uv.f                  \
205                    $(SOURCE_CODE)/mom_vi_hdissip.f                 \
206                    $(SOURCE_CODE)/mom_vi_u_coriolis.f              \
207                    $(SOURCE_CODE)/mom_vi_u_grad_ke.f               \
208                    $(SOURCE_CODE)/mom_vi_u_vertshear.f             \
209                    $(SOURCE_CODE)/mom_vi_v_coriolis.f              \
210                    $(SOURCE_CODE)/mom_vi_v_grad_ke.f               \
211                    $(SOURCE_CODE)/mom_vi_v_vertshear.f             \
212                                                                    \
213                  $(SOURCE_CODE)/packages_init_variables.f        \                  $(SOURCE_CODE)/packages_init_variables.f        \
214                  $(SOURCE_CODE)/plot_field.f                     \                  $(SOURCE_CODE)/plot_field.f                     \
215                  $(SOURCE_CODE)/solve_for_pressure.f             \                  $(SOURCE_CODE)/solve_for_pressure.f             \
# Line 162  SRC_MODEL      = \ Line 217  SRC_MODEL      = \
217                  $(SOURCE_CODE)/timestep.f                       \                  $(SOURCE_CODE)/timestep.f                       \
218                  $(SOURCE_CODE)/the_correction_step.f            \                  $(SOURCE_CODE)/the_correction_step.f            \
219                  $(SOURCE_CODE)/the_main_loop.f                  \                  $(SOURCE_CODE)/the_main_loop.f                  \
220                    $(SOURCE_CODE)/thermodynamics.f                 \
221                  $(SOURCE_CODE)/timestep_tracer.f                \                  $(SOURCE_CODE)/timestep_tracer.f                \
222                  $(SOURCE_CODE)/swfrac.f                         \                  $(SOURCE_CODE)/swfrac.f                         \
223                                                                  \                                                                  \
224                  $(SOURCE_CODE)/kpp_calc.f                       \                  $(SOURCE_CODE)/kpp_calc.f                       \
225                  $(SOURCE_CODE)/kpp_calc_diff.f                  \                  $(SOURCE_CODE)/kpp_calc_diff.f                  \
226                    $(SOURCE_CODE)/kpp_calc_visc.f                  \
227                  $(SOURCE_CODE)/kpp_do_diags.f                   \                  $(SOURCE_CODE)/kpp_do_diags.f                   \
228                  $(SOURCE_CODE)/kpp_init.f                       \                  $(SOURCE_CODE)/kpp_init.f                       \
229                  $(SOURCE_CODE)/kpp_open_diags.f                 \                  $(SOURCE_CODE)/kpp_open_diags.f                 \
# Line 191  SRC_MODEL      = \ Line 248  SRC_MODEL      = \
248                  $(SOURCE_CODE)/cost_tile.f                      \                  $(SOURCE_CODE)/cost_tile.f                      \
249                  $(SOURCE_CODE)/cost_test.f                      \                  $(SOURCE_CODE)/cost_test.f                      \
250                  $(SOURCE_CODE)/cost_tracer.f                    \                  $(SOURCE_CODE)/cost_tracer.f                    \
251                    $(SOURCE_CODE)/cost_atlantic_heat.f             \
252                    $(SOURCE_CODE)/cost_vector.f                    \
253                                                                    \
254                    $(SOURCE_CODE)/shap_filt_apply_ts.f             \
255                    $(SOURCE_CODE)/shap_filt_apply_uv.f             \
256                    $(SOURCE_CODE)/shap_filt_tracer_s1.f            \
257                    $(SOURCE_CODE)/shap_filt_tracer_s2.f            \
258                    $(SOURCE_CODE)/shap_filt_tracer_s2g.f           \
259                    $(SOURCE_CODE)/shap_filt_tracer_s4.f            \
260                    $(SOURCE_CODE)/shap_filt_uv_s1.f                \
261                    $(SOURCE_CODE)/shap_filt_uv_s2.f                \
262                    $(SOURCE_CODE)/shap_filt_uv_s2g.f               \
263                    $(SOURCE_CODE)/shap_filt_uv_s4.f                \
264                                                                    \
265    
266    #               $(SOURCE_CODE)/calc_ep_forcing.f                \
267    #               $(SOURCE_CODE)/cost_entropy.f                   \
268    #               $(SOURCE_CODE)/ini_ep.f                         \
269                                                                  \                                                                  \
270    
271    
# Line 198  SRC_MODEL      = \ Line 273  SRC_MODEL      = \
273  # rules  # rules
274  #--------------------------------------------------------  #--------------------------------------------------------
275    
276  adcode:  allcode:
277          cd $(DEST) ; cat $(SRC_MODEL) >! tamc_code_ecco.f          cd $(DEST) ; cat $(SRC_MODEL) >! tamc_code.f
278    
279  admodeltamc:  admodeltamc:
280          cd $(DEST) ; $(TAMC) $(TAMCFLAG) tamc_code_ecco.f       \          cd $(DEST) ; $(TAMC) $(ADTAMCFLAG) tamc_code.f  \
281             >! tamc_code_ecco_ad.prot             >! tamc_code_ad.prot
282    
283  admodeltaf:  admodeltaf:
284          cd $(DEST) ; $(TAF) $(TAFFLAG) tamc_code_ecco.f          cd $(DEST) ; $(TAF) $(ADTAFFLAG) tamc_code.f
285    
286    ftlmodeltamc:
287            cd $(DEST) ; $(TAMC) $(FTLTAMCFLAG) tamc_code.f \
288               >! tamc_code_ftl.prot
289    
290    ftlmodeltaf:
291            cd $(DEST) ; $(TAF) $(FTLTAFFLAG) tamc_code.f
292    
293    svdmodeltaf:
294            cd $(DEST) ; $(TAF) $(SVDTAFFLAG) tamc_code.f
295    
296  adchange:  adchange:
297          ${ADJOINT_SCRIPT}/adjoint_ecco_sed.com \          ${ADJOINT_SCRIPT}/adjoint_sed.com \
298             >! tamc_code_ecco_sed_ad.f ;  \             >! tamc_code_sed_ad.f ;  \
299          cp $(PKG)/autodiff/adjoint_model.F              \          cp $(PKG)/autodiff/adjoint_model.F              \
300             $(PKG)/autodiff/adjoint_model.F_old ;        \             $(PKG)/autodiff/adjoint_model.F_old ;        \
301          cat tamc_code_ecco_sed_ad.f >> $(PKG)/autodiff/adjoint_model.F          cat tamc_code_sed_ad.f >> $(PKG)/autodiff/adjoint_model.F
302    
303    ftlchange:
304            cp $(PKG)/autodiff/tangentlinear_model.F                \
305               $(PKG)/autodiff/tangentlinear_model.F_old ;  \
306            cat tamc_code_ftl.f >> $(PKG)/autodiff/tangentlinear_model.F
307    
308  adrestore:  adrestore:
309          cp $(PKG)/autodiff/adjoint_model.F_template     \          cp $(PKG)/autodiff/adjoint_model.F_template     \
310             $(PKG)/autodiff/adjoint_model.F             $(PKG)/autodiff/adjoint_model.F
311    
312  adtamc:  adcode admodeltamc  ftlrestore:
313            cp $(PKG)/autodiff/tangentlinear_model.F_template       \
314               $(PKG)/autodiff/tangentlinear_model.F
315    
316    adtamc:  adrestore ftlrestore allcode admodeltamc
317    
318    adtaf:  adrestore ftlrestore allcode admodeltaf
319    
320    ftltamc:  adrestore ftlrestore allcode ftlmodeltamc
321    
322    ftltaf:  adrestore ftlrestore allcode ftlmodeltaf
323    
324    svdtaf:  adrestore ftlrestore allcode svdmodeltaf
325    
 adtaf:  adcode admodeltaf  

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.21

  ViewVC Help
Powered by ViewVC 1.1.22