/[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.1 by heimbach, Sun Mar 25 22:33:51 2001 UTC revision 1.15 by heimbach, Wed Sep 19 16:08:53 2001 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
6  DEST             = .  DEST             = .
7  SOURCE_CODE      = ../bin  SOURCE_CODE      = ../bin
8  ADJOINT_SCRIPT   = ../adjoint  ADJOINT_SCRIPT   = ../adjoint
9  BASE             = ..  BASE             = ..
10  TAMCFLAGS        = -adjoint -i4 -r4  ADTAMCFLAGS      = -reverse -i4 -r4 -admark  ad
11    ADTAFFLAGS       = -reverse -i4 -r4 -admark  ad -warn_step -flow taf_flow.log
12    TLTAMCFLAGS      = -forward -i4 -r4 -ftlmark g_
13    TLTAFFLAGS       = -forward -i4 -r4 -ftlmark g_ -warn_step -flow taf_flow.log
14  PKG             = $(BASE)/pkg  PKG             = $(BASE)/pkg
15    
16  DIFF_FLAGS       = -module the_main_sens                \  DIFF_FLAGS       = -toplevel the_main_loop              \
17                     -input  '    xx_theta_dummy          \                     -input  '    xx_theta_dummy          \
18                                  xx_salt_dummy           \                                  xx_salt_dummy           \
19                                    xx_tr1_dummy            \
20                                  xx_hflux_dummy          \                                  xx_hflux_dummy          \
21                                  xx_sflux_dummy          \                                  xx_sflux_dummy          \
22                                  xx_tauu_dummy           \                                  xx_tauu_dummy           \
23                                  xx_tauv_dummy           \                                  xx_tauv_dummy           \
24                                  xx_sss_dummy            \                                  xx_sss_dummy            \
25                                  xx_sst_dummy'           \                                  xx_sst_dummy            \
26                                    xx_diffkr_dummy         \
27                                    xx_kapgm_dummy'         \
28                     -output 'fc'                     -output 'fc'
29    
30  TAMCFLAG         = $(TAMCFLAGS) $(DIFF_FLAGS) -l list_uv -admark ad  ADTAMCFLAG         = $(ADTAMCFLAGS) $(DIFF_FLAGS)
31    ADTAFFLAG          = $(ADTAFFLAGS)  $(DIFF_FLAGS)
32    
33    TLTAMCFLAG         = $(TLTAMCFLAGS) $(DIFF_FLAGS)
34    TLTAFFLAG          = $(TLTAFFLAGS)  $(DIFF_FLAGS)
35    
36  # Source files for the MITgcmUV  # Source files for the MITgcmUV
37  SRC_MODEL       = $(PKG)/autodiff/read_write.flow       \  SRC_MODEL       = \
38                    $(PKG)/autodiff/read_write.flow \
39                  $(PKG)/autodiff/read_write_fld.flow     \                  $(PKG)/autodiff/read_write_fld.flow     \
40                  $(PKG)/autodiff/read_write_rec.flow     \                  $(PKG)/autodiff/read_write_rec.flow     \
                 $(PKG)/autodiff/cg2d.flow               \  
                 $(PKG)/autodiff/initialisation.flow     \  
41                  $(PKG)/autodiff/diags.flow              \                  $(PKG)/autodiff/diags.flow              \
42                    $(PKG)/autodiff/cg2d.flow               \
43                    $(PKG)/autodiff/debug.flow              \
44                  $(PKG)/autodiff/dummy_in_stepping.flow  \                  $(PKG)/autodiff/dummy_in_stepping.flow  \
45                  $(PKG)/autodiff/external_fields_load.flow       \                  $(PKG)/autodiff/external_fields_load.flow       \
46                  $(PKG)/autodiff/eesupp.flow             \                  $(PKG)/autodiff/eesupp.flow             \
47                  $(PKG)/autodiff/active_file.flow        \                  $(PKG)/autodiff/active_file.flow        \
48                  $(PKG)/autodiff/write_state.flow        \                  $(PKG)/autodiff/write_state.flow        \
49                  $(PKG)/autodiff/write_time_averages.flow\                  $(PKG)/autodiff/ecco_check_exp.flow     \
50                  $(PKG)/autodiff/exch_ad.flow            \                  $(PKG)/autodiff/exch_ad.flow            \
51                    $(PKG)/autodiff/exch_z_ad.flow          \
52                    $(PKG)/autodiff/exch_uv_ad.flow         \
53                  $(PKG)/autodiff/global_sum_ad.flow      \                  $(PKG)/autodiff/global_sum_ad.flow      \
54                  $(PKG)/autodiff/global_max_ad.flow      \                  $(PKG)/autodiff/global_max_ad.flow      \
55                    $(PKG)/autodiff/initialisation.flow     \
56                  $(PKG)/autodiff/mdsio.flow              \                  $(PKG)/autodiff/mdsio.flow              \
57                    $(PKG)/autodiff/monitor.flow            \
58                  $(PKG)/autodiff/checkpoint.flow         \                  $(PKG)/autodiff/checkpoint.flow         \
59                  $(PKG)/autodiff/print_message.flow      \                  $(PKG)/autodiff/print_message.flow      \
60                  $(PKG)/autodiff/open_copy_data_file.flow\                  $(PKG)/autodiff/open_copy_data_file.flow\
61                    $(PKG)/autodiff/timeave.flow            \
62                                                                  \                                                                  \
63                  $(SOURCE_CODE)/grad_sigma.f                     \                  $(SOURCE_CODE)/adams_bashforth2.f               \
64                  $(SOURCE_CODE)/calc_buoyancy.f                  \                  $(SOURCE_CODE)/calc_buoyancy.f                  \
65                  $(SOURCE_CODE)/calc_common_factors.f            \                  $(SOURCE_CODE)/calc_common_factors.f            \
66                  $(SOURCE_CODE)/calc_diffusivity.f               \                  $(SOURCE_CODE)/calc_diffusivity.f               \
# Line 52  SRC_MODEL      = $(PKG)/autodiff/read_write.f Line 68  SRC_MODEL      = $(PKG)/autodiff/read_write.f
68                  $(SOURCE_CODE)/calc_grad_phi_surf.f             \                  $(SOURCE_CODE)/calc_grad_phi_surf.f             \
69                  $(SOURCE_CODE)/calc_gs.f                        \                  $(SOURCE_CODE)/calc_gs.f                        \
70                  $(SOURCE_CODE)/calc_gt.f                        \                  $(SOURCE_CODE)/calc_gt.f                        \
71                    $(SOURCE_CODE)/calc_gtr1.f                      \
72                  $(SOURCE_CODE)/calc_ivdc.f                      \                  $(SOURCE_CODE)/calc_ivdc.f                      \
                 $(SOURCE_CODE)/calc_mom_rhs.f                   \  
73                  $(SOURCE_CODE)/calc_phi_hyd.f                   \                  $(SOURCE_CODE)/calc_phi_hyd.f                   \
74                    $(SOURCE_CODE)/calc_viscosity.f                 \
75                  $(SOURCE_CODE)/comm_stats.f                     \                  $(SOURCE_CODE)/comm_stats.f                     \
76                  $(SOURCE_CODE)/convect.f                        \                  $(SOURCE_CODE)/convect.f                        \
77                  $(SOURCE_CODE)/convective_adjustment.f          \                  $(SOURCE_CODE)/convective_adjustment.f          \
78                    $(SOURCE_CODE)/convective_adjustment_ini.f      \
79                  $(SOURCE_CODE)/correction_step.f                \                  $(SOURCE_CODE)/correction_step.f                \
80                  $(SOURCE_CODE)/cycle_tracer.f                   \                  $(SOURCE_CODE)/cycle_tracer.f                   \
81                  $(SOURCE_CODE)/different_multiple.f             \                  $(SOURCE_CODE)/different_multiple.f             \
# Line 68  SRC_MODEL      = $(PKG)/autodiff/read_write.f Line 86  SRC_MODEL      = $(PKG)/autodiff/read_write.f
86                  $(SOURCE_CODE)/external_forcing_surf.f          \                  $(SOURCE_CODE)/external_forcing_surf.f          \
87                  $(SOURCE_CODE)/find_alpha.f                     \                  $(SOURCE_CODE)/find_alpha.f                     \
88                  $(SOURCE_CODE)/find_rho.f                       \                  $(SOURCE_CODE)/find_rho.f                       \
89                    $(SOURCE_CODE)/forward_step.f                   \
90                  $(SOURCE_CODE)/freeze.f                         \                  $(SOURCE_CODE)/freeze.f                         \
91                  $(SOURCE_CODE)/get_offline_fields.f             \                  $(SOURCE_CODE)/gad_advection.f                  \
92                    $(SOURCE_CODE)/gad_biharm_x.f                   \
93                    $(SOURCE_CODE)/gad_biharm_y.f                   \
94                    $(SOURCE_CODE)/gad_c2_adv_r.f                   \
95                    $(SOURCE_CODE)/gad_c2_adv_x.f                   \
96                    $(SOURCE_CODE)/gad_c2_adv_y.f                   \
97                    $(SOURCE_CODE)/gad_c4_adv_r.f                   \
98                    $(SOURCE_CODE)/gad_c4_adv_x.f                   \
99                    $(SOURCE_CODE)/gad_c4_adv_y.f                   \
100                    $(SOURCE_CODE)/gad_calc_rhs.f                   \
101                    $(SOURCE_CODE)/gad_del2.f                       \
102                    $(SOURCE_CODE)/gad_diff_r.f                     \
103                    $(SOURCE_CODE)/gad_diff_x.f                     \
104                    $(SOURCE_CODE)/gad_diff_y.f                     \
105                    $(SOURCE_CODE)/gad_dst3_adv_x.f                 \
106                    $(SOURCE_CODE)/gad_dst3_adv_y.f                 \
107                    $(SOURCE_CODE)/gad_dst3_adv_r.f                 \
108                    $(SOURCE_CODE)/gad_dst3fl_adv_x.f               \
109                    $(SOURCE_CODE)/gad_dst3fl_adv_y.f               \
110                    $(SOURCE_CODE)/gad_dst3fl_adv_r.f               \
111                    $(SOURCE_CODE)/gad_fluxlimit_adv_r.f            \
112                    $(SOURCE_CODE)/gad_fluxlimit_adv_x.f            \
113                    $(SOURCE_CODE)/gad_fluxlimit_adv_y.f            \
114                    $(SOURCE_CODE)/gad_grad_x.f                     \
115                    $(SOURCE_CODE)/gad_grad_y.f                     \
116                    $(SOURCE_CODE)/gad_u3_adv_r.f                   \
117                    $(SOURCE_CODE)/gad_u3_adv_x.f                   \
118                    $(SOURCE_CODE)/gad_u3_adv_y.f                   \
119                    $(SOURCE_CODE)/grad_sigma.f                     \
120                  $(SOURCE_CODE)/impldiff.f                       \                  $(SOURCE_CODE)/impldiff.f                       \
121                  $(SOURCE_CODE)/ini_cartesian_grid.f             \                  $(SOURCE_CODE)/ini_cartesian_grid.f             \
122                  $(SOURCE_CODE)/ini_cg2d.f                       \                  $(SOURCE_CODE)/ini_cg2d.f                       \
123                  $(SOURCE_CODE)/ini_communication_patterns.f     \                  $(SOURCE_CODE)/ini_communication_patterns.f     \
124                  $(SOURCE_CODE)/ini_cori.f                       \                  $(SOURCE_CODE)/ini_cori.f                       \
125                    $(SOURCE_CODE)/ini_curvilinear_grid.f           \
126                  $(SOURCE_CODE)/ini_depths.f                     \                  $(SOURCE_CODE)/ini_depths.f                     \
127                  $(SOURCE_CODE)/ini_fields.f                     \                  $(SOURCE_CODE)/ini_fields.f                     \
128                  $(SOURCE_CODE)/ini_forcing.f                    \                  $(SOURCE_CODE)/ini_forcing.f                    \
129                  $(SOURCE_CODE)/ini_grid.f                       \                  $(SOURCE_CODE)/ini_grid.f                       \
130                    $(SOURCE_CODE)/ini_linear_phisurf.f             \
131                  $(SOURCE_CODE)/ini_masks_etc.f                  \                  $(SOURCE_CODE)/ini_masks_etc.f                  \
132                    $(SOURCE_CODE)/ini_mixing.f                     \
133                    $(SOURCE_CODE)/ini_p_ground.f                   \
134                    $(SOURCE_CODE)/ini_pnh.f                        \
135                  $(SOURCE_CODE)/ini_procs.f                      \                  $(SOURCE_CODE)/ini_procs.f                      \
136                  $(SOURCE_CODE)/ini_psurf.f                      \                  $(SOURCE_CODE)/ini_psurf.f                      \
137                  $(SOURCE_CODE)/ini_salt.f                       \                  $(SOURCE_CODE)/ini_salt.f                       \
138                  $(SOURCE_CODE)/ini_spherical_polar_grid.f       \                  $(SOURCE_CODE)/ini_spherical_polar_grid.f       \
139                  $(SOURCE_CODE)/ini_theta.f                      \                  $(SOURCE_CODE)/ini_theta.f                      \
140                  $(SOURCE_CODE)/ini_uvel.f                       \                  $(SOURCE_CODE)/ini_tr1.f                        \
141                    $(SOURCE_CODE)/ini_dynvars.f                    \
142                    $(SOURCE_CODE)/ini_vel.f                        \
143                  $(SOURCE_CODE)/ini_vertical_grid.f              \                  $(SOURCE_CODE)/ini_vertical_grid.f              \
                 $(SOURCE_CODE)/ini_vvel.f                       \  
                 $(SOURCE_CODE)/ini_wvel.f                       \  
144                  $(SOURCE_CODE)/initialise_varia.f               \                  $(SOURCE_CODE)/initialise_varia.f               \
145                  $(SOURCE_CODE)/integrate_for_w.f                \                  $(SOURCE_CODE)/integrate_for_w.f                \
146                  $(SOURCE_CODE)/modeldata_example.f              \                  $(SOURCE_CODE)/modeldata_example.f              \
147                  $(SOURCE_CODE)/nml_filter.f                     \                  $(SOURCE_CODE)/mom_fluxform.f                   \
148                    $(SOURCE_CODE)/mom_hdissip.f                    \
149                    $(SOURCE_CODE)/mom_vecinv.f                     \
150                    $(SOURCE_CODE)/mom_calc_hfacz.f                 \
151                    $(SOURCE_CODE)/mom_calc_ke.f                    \
152                    $(SOURCE_CODE)/mom_calc_strain.f                \
153                    $(SOURCE_CODE)/mom_calc_tension.f               \
154                    $(SOURCE_CODE)/mom_cdscheme.f                   \
155                    $(SOURCE_CODE)/mom_u_adv_uu.f                   \
156                    $(SOURCE_CODE)/mom_u_adv_vu.f                   \
157                    $(SOURCE_CODE)/mom_u_adv_wu.f                   \
158                    $(SOURCE_CODE)/mom_u_bottomdrag.f               \
159                    $(SOURCE_CODE)/mom_u_del2u.f                    \
160                    $(SOURCE_CODE)/mom_u_metric_nh.f                \
161                    $(SOURCE_CODE)/mom_u_metric_sphere.f            \
162                    $(SOURCE_CODE)/mom_u_rviscflux.f                \
163                    $(SOURCE_CODE)/mom_u_sidedrag.f                 \
164                    $(SOURCE_CODE)/mom_u_xviscflux.f                \
165                    $(SOURCE_CODE)/mom_u_yviscflux.f                \
166                    $(SOURCE_CODE)/mom_v_adv_uv.f                   \
167                    $(SOURCE_CODE)/mom_v_adv_vv.f                   \
168                    $(SOURCE_CODE)/mom_v_adv_wv.f                   \
169                    $(SOURCE_CODE)/mom_v_bottomdrag.f               \
170                    $(SOURCE_CODE)/mom_v_del2v.f                    \
171                    $(SOURCE_CODE)/mom_v_metric_nh.f                \
172                    $(SOURCE_CODE)/mom_v_metric_sphere.f            \
173                    $(SOURCE_CODE)/mom_v_rviscflux.f                \
174                    $(SOURCE_CODE)/mom_v_sidedrag.f                 \
175                    $(SOURCE_CODE)/mom_v_xviscflux.f                \
176                    $(SOURCE_CODE)/mom_v_yviscflux.f                \
177                    $(SOURCE_CODE)/mom_vi_calc_absvort3.f           \
178                    $(SOURCE_CODE)/mom_vi_calc_hdiv.f               \
179                    $(SOURCE_CODE)/mom_vi_calc_ke.f                 \
180                    $(SOURCE_CODE)/mom_vi_calc_relvort3.f           \
181                    $(SOURCE_CODE)/mom_vi_coriolis.f                \
182                    $(SOURCE_CODE)/mom_vi_del2uv.f                  \
183                    $(SOURCE_CODE)/mom_vi_hdissip.f                 \
184                    $(SOURCE_CODE)/mom_vi_u_coriolis.f              \
185                    $(SOURCE_CODE)/mom_vi_u_grad_ke.f               \
186                    $(SOURCE_CODE)/mom_vi_u_vertshear.f             \
187                    $(SOURCE_CODE)/mom_vi_v_coriolis.f              \
188                    $(SOURCE_CODE)/mom_vi_v_grad_ke.f               \
189                    $(SOURCE_CODE)/mom_vi_v_vertshear.f             \
190                  $(SOURCE_CODE)/packages_init_variables.f        \                  $(SOURCE_CODE)/packages_init_variables.f        \
191                  $(SOURCE_CODE)/plot_field.f                     \                  $(SOURCE_CODE)/plot_field.f                     \
192                  $(SOURCE_CODE)/solve_for_pressure.f             \                  $(SOURCE_CODE)/solve_for_pressure.f             \
193                  $(SOURCE_CODE)/state_summary.f                  \                  $(SOURCE_CODE)/state_summary.f                  \
194                  $(SOURCE_CODE)/timestep.f                       \                  $(SOURCE_CODE)/timestep.f                       \
195                  $(SOURCE_CODE)/the_correction_step.f            \                  $(SOURCE_CODE)/the_correction_step.f            \
196                  $(SOURCE_CODE)/the_main_sens.f                  \                  $(SOURCE_CODE)/the_main_loop.f                  \
197                    $(SOURCE_CODE)/thermodynamics.f                 \
198                  $(SOURCE_CODE)/timestep_tracer.f                \                  $(SOURCE_CODE)/timestep_tracer.f                \
199                  $(SOURCE_CODE)/swfrac.f                         \                  $(SOURCE_CODE)/swfrac.f                         \
200                                                                  \                                                                  \
201                  $(SOURCE_CODE)/kpp_calc.f                       \                  $(SOURCE_CODE)/kpp_calc.f                       \
202                  $(SOURCE_CODE)/kpp_calc_diff.f                  \                  $(SOURCE_CODE)/kpp_calc_diff.f                  \
203                    $(SOURCE_CODE)/kpp_calc_visc.f                  \
204                  $(SOURCE_CODE)/kpp_do_diags.f                   \                  $(SOURCE_CODE)/kpp_do_diags.f                   \
205                  $(SOURCE_CODE)/kpp_init.f                       \                  $(SOURCE_CODE)/kpp_init.f                       \
206                  $(SOURCE_CODE)/kpp_open_diags.f                 \                  $(SOURCE_CODE)/kpp_open_diags.f                 \
# Line 126  SRC_MODEL      = $(PKG)/autodiff/read_write.f Line 222  SRC_MODEL      = $(PKG)/autodiff/read_write.f
222                                                                  \                                                                  \
223                  $(SOURCE_CODE)/cost_final.f                     \                  $(SOURCE_CODE)/cost_final.f                     \
224                  $(SOURCE_CODE)/cost_init.f                      \                  $(SOURCE_CODE)/cost_init.f                      \
225                    $(SOURCE_CODE)/cost_tile.f                      \
226                  $(SOURCE_CODE)/cost_test.f                      \                  $(SOURCE_CODE)/cost_test.f                      \
227                    $(SOURCE_CODE)/cost_tracer.f                    \
228                                                                  \                                                                  \
229    
230    
# Line 134  SRC_MODEL      = $(PKG)/autodiff/read_write.f Line 232  SRC_MODEL      = $(PKG)/autodiff/read_write.f
232  # rules  # rules
233  #--------------------------------------------------------  #--------------------------------------------------------
234    
235  adcode:  allcode:
236          cd $(DEST) ; cat $(SRC_MODEL) >! tamc_code_ecco.f          cd $(DEST) ; cat $(SRC_MODEL) >! tamc_code_ecco.f
237  admodel:  
238          cd $(DEST) ; $(TAMC) $(TAMCFLAG) tamc_code_ecco.f       \  admodeltamc:
239             >! tamc_code_ecco.prot          cd $(DEST) ; $(TAMC) $(ADTAMCFLAG) tamc_code_ecco.f     \
240               >! tamc_code_ecco_ad.prot
241    
242    admodeltaf:
243            cd $(DEST) ; $(TAF) $(ADTAFFLAG) tamc_code_ecco.f
244    
245    tlmodeltamc:
246            cd $(DEST) ; $(TAMC) $(TLTAMCFLAG) tamc_code_ecco.f     \
247               >! tamc_code_ecco_tl.prot
248    
249    tlmodeltaf:
250            cd $(DEST) ; $(TAF) $(TLTAFFLAG) tamc_code_ecco.f
251    
252  adchange:  adchange:
253          ${ADJOINT_SCRIPT}/adjoint_ecco_sed.com \          ${ADJOINT_SCRIPT}/adjoint_ecco_sed.com \
# Line 149  adchange: Line 258  adchange:
258  adrestore:  adrestore:
259          cp $(PKG)/autodiff/adjoint_model.F_template     \          cp $(PKG)/autodiff/adjoint_model.F_template     \
260             $(PKG)/autodiff/adjoint_model.F             $(PKG)/autodiff/adjoint_model.F
261  adall:  adcode admodel  
262    tltamc:  allcode tlmodeltamc
263    
264    tltaf:  allcode tlmodeltaf
265    
266    adtamc:  adrestore allcode admodeltamc
267    
268    adtaf:  adrestore allcode admodeltaf

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.15

  ViewVC Help
Powered by ViewVC 1.1.22