/[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.16.4.4 by heimbach, Tue Feb 12 01:18:15 2002 UTC revision 1.18 by heimbach, Thu Nov 8 23:41:59 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  ###TAMC             = /data43/ralf/tamc/tamc  TAF              = ~fastopt/bin/taf
 TAF              = taf  
 ###TAF              = ~fastopt/bin/taf  
6  DEST             = .  DEST             = .
7  SOURCE_CODE      = ../bin  SOURCE_CODE      = ../bin
8  ADJOINT_SCRIPT   = ../adjoint  ADJOINT_SCRIPT   = ../adjoint
9  BASE             = ..  BASE             = ..
 TAMCFLAGS        = -reverse -i4 -r4  
 TAFFLAGS         = -reverse -i4 -r4 -nonew_arg  
10  PKG             = $(BASE)/pkg  PKG             = $(BASE)/pkg
11    ADTAMCFLAGS      = -reverse -i4 -r4 -admark  ad
12    ADTAFFLAGS       = -reverse -i4 -r4 -admark  ad
13    TLTAMCFLAGS      = -forward -i4 -r4 -ftlmark g_
14    TLTAFFLAGS       = -forward -i4 -r4 -ftlmark g_
15    # -warn_step -flow taf_flow.log
16    
17  DIFF_FLAGS       = -toplevel the_main_loop              \  DIFF_FLAGS       = -toplevel the_main_loop              \
18                     -input  '    xx_theta_dummy          \                     -input  '    xx_theta_dummy          \
19                                  xx_salt_dummy           \                                  xx_salt_dummy           \
20                                    xx_tr1_dummy            \
21                                  xx_hflux_dummy          \                                  xx_hflux_dummy          \
22                                  xx_sflux_dummy          \                                  xx_sflux_dummy          \
23                                  xx_tauu_dummy           \                                  xx_tauu_dummy           \
24                                  xx_tauv_dummy           \                                  xx_tauv_dummy           \
25                                  xx_atemp_dummy          \                                  xx_sss_dummy            \
26                                  xx_aqh_dummy            \                                  xx_sst_dummy            \
27                                  xx_uwind_dummy          \                                  xx_diffkr_dummy         \
28                                  xx_vwind_dummy          \                                  xx_kapgm_dummy'         \
                                 xx_obcsn_dummy          \  
                                 xx_obcss_dummy          \  
                                 xx_obcsw_dummy          \  
                                 xx_obcse_dummy'         \  
29                     -output 'fc'                     -output 'fc'
30    
31  TAMCFLAG         = $(TAMCFLAGS) $(DIFF_FLAGS) -admark ad  ADTAMCFLAG         = $(ADTAMCFLAGS) $(DIFF_FLAGS)
32    ADTAFFLAG          = $(ADTAFFLAGS)  $(DIFF_FLAGS)
 TAFFLAG          = $(TAFFLAGS) $(DIFF_FLAGS) -admark ad  
33    
34    TLTAMCFLAG         = $(TLTAMCFLAGS) $(DIFF_FLAGS)
35    TLTAFFLAG          = $(TLTAFFLAGS)  $(DIFF_FLAGS)
36    
37  # Source files for the MITgcmUV  # Source files for the MITgcmUV
38  SRC_MODEL       = \  SRC_MODEL       = \
# Line 57  SRC_MODEL      = \ Line 56  SRC_MODEL      = \
56                  $(PKG)/autodiff/initialisation.flow     \                  $(PKG)/autodiff/initialisation.flow     \
57                  $(PKG)/autodiff/mdsio.flow              \                  $(PKG)/autodiff/mdsio.flow              \
58                  $(PKG)/autodiff/monitor.flow            \                  $(PKG)/autodiff/monitor.flow            \
                 $(PKG)/autodiff/obcs.flow               \  
59                  $(PKG)/autodiff/checkpoint.flow         \                  $(PKG)/autodiff/checkpoint.flow         \
60                    $(PKG)/autodiff/print_message.flow      \
61                  $(PKG)/autodiff/open_copy_data_file.flow\                  $(PKG)/autodiff/open_copy_data_file.flow\
62                  $(PKG)/autodiff/timeave.flow            \                  $(PKG)/autodiff/timeave.flow            \
63                                                                  \                                                                  \
# Line 89  SRC_MODEL      = \ Line 88  SRC_MODEL      = \
88                  $(SOURCE_CODE)/external_forcing_surf.f          \                  $(SOURCE_CODE)/external_forcing_surf.f          \
89                  $(SOURCE_CODE)/find_alpha.f                     \                  $(SOURCE_CODE)/find_alpha.f                     \
90                  $(SOURCE_CODE)/find_rho.f                       \                  $(SOURCE_CODE)/find_rho.f                       \
91                    $(SOURCE_CODE)/forward_step.f                   \
92                  $(SOURCE_CODE)/freeze.f                         \                  $(SOURCE_CODE)/freeze.f                         \
93                                                                  \                                                                  \
94                  $(SOURCE_CODE)/gad_advection.f                  \                  $(SOURCE_CODE)/gad_advection.f                  \
# Line 201  SRC_MODEL      = \ Line 201  SRC_MODEL      = \
201                  $(SOURCE_CODE)/state_summary.f                  \                  $(SOURCE_CODE)/state_summary.f                  \
202                  $(SOURCE_CODE)/timestep.f                       \                  $(SOURCE_CODE)/timestep.f                       \
203                  $(SOURCE_CODE)/the_correction_step.f            \                  $(SOURCE_CODE)/the_correction_step.f            \
204                    $(SOURCE_CODE)/the_main_loop.f                  \
205                  $(SOURCE_CODE)/thermodynamics.f                 \                  $(SOURCE_CODE)/thermodynamics.f                 \
206                  $(SOURCE_CODE)/timestep_tracer.f                \                  $(SOURCE_CODE)/timestep_tracer.f                \
207                  $(SOURCE_CODE)/swfrac.f                         \                  $(SOURCE_CODE)/swfrac.f                         \
# Line 224  SRC_MODEL      = \ Line 225  SRC_MODEL      = \
225                  $(SOURCE_CODE)/gmredi_xtransport.f              \                  $(SOURCE_CODE)/gmredi_xtransport.f              \
226                  $(SOURCE_CODE)/gmredi_ytransport.f              \                  $(SOURCE_CODE)/gmredi_ytransport.f              \
227                                                                  \                                                                  \
228                    $(SOURCE_CODE)/ctrl_map_ini.f                   \
229                    $(SOURCE_CODE)/ctrl_map_forcing.f               \
230                                                                  \                                                                  \
                 $(SOURCE_CODE)/cost_aqh.f                       \  
                 $(SOURCE_CODE)/cost_atemp.f                     \  
                 $(SOURCE_CODE)/cost_atlantic.f                  \  
                 $(SOURCE_CODE)/cost_averagesfields.f            \  
                 $(SOURCE_CODE)/cost_averagesfinal.f             \  
                 $(SOURCE_CODE)/cost_averagesflags.f             \  
                 $(SOURCE_CODE)/cost_averagesinit.f              \  
                 $(SOURCE_CODE)/cost_ctds.f                      \  
                 $(SOURCE_CODE)/cost_ctdt.f                      \  
231                  $(SOURCE_CODE)/cost_final.f                     \                  $(SOURCE_CODE)/cost_final.f                     \
232                  $(SOURCE_CODE)/cost_forcing.f                   \                  $(SOURCE_CODE)/cost_init.f                      \
233                  $(SOURCE_CODE)/cost_geoid.f                     \                  $(SOURCE_CODE)/cost_tile.f                      \
234                  $(SOURCE_CODE)/cost_heatflux.f                  \                  $(SOURCE_CODE)/cost_test.f                      \
235                  $(SOURCE_CODE)/cost_hyd.f                       \                  $(SOURCE_CODE)/cost_tracer.f                    \
                 $(SOURCE_CODE)/cost_initvaria.f                 \  
                 $(SOURCE_CODE)/cost_merstress.f                 \  
                 $(SOURCE_CODE)/cost_readers.f                   \  
                 $(SOURCE_CODE)/cost_readsssfields.f             \  
                 $(SOURCE_CODE)/cost_readsstfields.f             \  
                 $(SOURCE_CODE)/cost_readtopex.f                 \  
                 $(SOURCE_CODE)/cost_readtopexmean.f             \  
                 $(SOURCE_CODE)/cost_salt.f                      \  
                 $(SOURCE_CODE)/cost_saltflux.f                  \  
                 $(SOURCE_CODE)/cost_ssh.f                       \  
                 $(SOURCE_CODE)/cost_ssh_mean.f                  \  
                 $(SOURCE_CODE)/cost_sss.f                       \  
                 $(SOURCE_CODE)/cost_sst.f                       \  
                 $(SOURCE_CODE)/cost_theta.f                     \  
                 $(SOURCE_CODE)/cost_uwind.f                     \  
                 $(SOURCE_CODE)/cost_vwind.f                     \  
                 $(SOURCE_CODE)/cost_xbt.f                       \  
                 $(SOURCE_CODE)/cost_zonstress.f                 \  
                 $(SOURCE_CODE)/cost_obcs.f                      \  
                 $(SOURCE_CODE)/cost_obcsn.f                     \  
                 $(SOURCE_CODE)/cost_obcss.f                     \  
                 $(SOURCE_CODE)/cost_obcsw.f                     \  
                 $(SOURCE_CODE)/cost_obcse.f                     \  
                                                                 \  
                 $(SOURCE_CODE)/ctrl_getheatflux.f               \  
                 $(SOURCE_CODE)/ctrl_getsaltflux.f               \  
                 $(SOURCE_CODE)/ctrl_getzonstress.f              \  
                 $(SOURCE_CODE)/ctrl_getmerstress.f              \  
                 $(SOURCE_CODE)/ctrl_getatemp.f                  \  
                 $(SOURCE_CODE)/ctrl_getaqh.f                    \  
                 $(SOURCE_CODE)/ctrl_getuwind.f                  \  
                 $(SOURCE_CODE)/ctrl_getvwind.f                  \  
                 $(SOURCE_CODE)/ctrl_getobcsn.f                  \  
                 $(SOURCE_CODE)/ctrl_getobcss.f                  \  
                 $(SOURCE_CODE)/ctrl_getobcsw.f                  \  
                 $(SOURCE_CODE)/ctrl_getobcse.f                  \  
                 $(SOURCE_CODE)/ctrl_getrec.f                    \  
                 $(SOURCE_CODE)/ctrl_map.f                       \  
236                                                                  \                                                                  \
237                  $(SOURCE_CODE)/ecco_init.f                      \                  $(SOURCE_CODE)/shap_filt_apply.f                \
238                  $(SOURCE_CODE)/ecco_the_main_loop.f             \                  $(SOURCE_CODE)/shap_filt_apply_ts.f             \
239                    $(SOURCE_CODE)/shap_filt_tracer_s1.f            \
240                    $(SOURCE_CODE)/shap_filt_tracer_s2.f            \
241                    $(SOURCE_CODE)/shap_filt_tracer_s2g.f           \
242                    $(SOURCE_CODE)/shap_filt_tracer_s4.f            \
243                    $(SOURCE_CODE)/shap_filt_uv_s1.f                \
244                    $(SOURCE_CODE)/shap_filt_uv_s2.f                \
245                    $(SOURCE_CODE)/shap_filt_uv_s2g.f               \
246                    $(SOURCE_CODE)/shap_filt_uv_s4.f                \
247                                                                  \                                                                  \
                 $(SOURCE_CODE)/exf_init.f                       \  
                 $(SOURCE_CODE)/exf_readparms.f                  \  
                 $(SOURCE_CODE)/exf_summary.f                    \  
                 $(SOURCE_CODE)/exf_bulkcdn.f                    \  
                 $(SOURCE_CODE)/exf_bulkqsat.f                   \  
                 $(SOURCE_CODE)/exf_bulkrhn.f                    \  
                 $(SOURCE_CODE)/exf_getffields.f                 \  
                 $(SOURCE_CODE)/exf_getffieldrec.f               \  
                 $(SOURCE_CODE)/exf_getforcing.f                 \  
                 $(SOURCE_CODE)/exf_mapfields.f                  \  
                 $(SOURCE_CODE)/exf_getobcs.f                    \  
                 $(SOURCE_CODE)/exf_getsurfacefluxes.f           \  
                 $(SOURCE_CODE)/exf_swapffields.f                \  
                 $(SOURCE_CODE)/exf_filter_rl.f                  \  
                 $(SOURCE_CODE)/exf_filter_rs.f                  \  
                 $(SOURCE_CODE)/exf_set_aqh.f                    \  
                 $(SOURCE_CODE)/exf_set_atemp.f                  \  
                 $(SOURCE_CODE)/exf_set_hflux.f                  \  
                 $(SOURCE_CODE)/exf_set_hfluxa.f                 \  
                 $(SOURCE_CODE)/exf_set_lwflux.f                 \  
                 $(SOURCE_CODE)/exf_set_precip.f                 \  
                 $(SOURCE_CODE)/exf_set_sflux.f                  \  
                 $(SOURCE_CODE)/exf_set_sfluxa.f                 \  
                 $(SOURCE_CODE)/exf_set_swflux.f                 \  
                 $(SOURCE_CODE)/exf_set_ustress.f                \  
                 $(SOURCE_CODE)/exf_set_ustressa.f               \  
                 $(SOURCE_CODE)/exf_set_uwind.f                  \  
                 $(SOURCE_CODE)/exf_set_vstress.f                \  
                 $(SOURCE_CODE)/exf_set_vstressa.f               \  
                 $(SOURCE_CODE)/exf_set_vwind.f                  \  
                 $(SOURCE_CODE)/exf_set_obcs.f                   \  
                                                                 \  
                 $(SOURCE_CODE)/exf_clim_init.f                  \  
                 $(SOURCE_CODE)/exf_clim_readparms.f             \  
                 $(SOURCE_CODE)/exf_clim_summary.f               \  
                 $(SOURCE_CODE)/exf_getclim.f                    \  
                 $(SOURCE_CODE)/exf_set_climsalt.f               \  
                 $(SOURCE_CODE)/exf_set_climtemp.f               \  
                 $(SOURCE_CODE)/exf_set_climsss.f                \  
                 $(SOURCE_CODE)/exf_set_climsst.f                \  
                                                                 \  
                 $(SOURCE_CODE)/exfa_getffields.f                \  
                 $(SOURCE_CODE)/exfa_getforcing.f                \  
                 $(SOURCE_CODE)/exfa_init.f                      \  
                 $(SOURCE_CODE)/exfa_mapfields.f                 \  
                 $(SOURCE_CODE)/exfa_summary.f                   \  
                                                                 \  
                 $(SOURCE_CODE)/cal_addtime.f                    \  
                 $(SOURCE_CODE)/cal_checkdate.f                  \  
                 $(SOURCE_CODE)/cal_compdates.f                  \  
                 $(SOURCE_CODE)/cal_convdate.f                   \  
                 $(SOURCE_CODE)/cal_copydate.f                   \  
                 $(SOURCE_CODE)/cal_daysformonth.f               \  
                 $(SOURCE_CODE)/cal_dayspermonth.f               \  
                 $(SOURCE_CODE)/cal_fulldate.f                   \  
                 $(SOURCE_CODE)/cal_getdate.f                    \  
                 $(SOURCE_CODE)/cal_getmonthsrec.f               \  
                 $(SOURCE_CODE)/cal_intdays.f                    \  
                 $(SOURCE_CODE)/cal_intmonths.f                  \  
                 $(SOURCE_CODE)/cal_intsteps.f                   \  
                 $(SOURCE_CODE)/cal_intyears.f                   \  
                 $(SOURCE_CODE)/cal_isleap.f                     \  
                 $(SOURCE_CODE)/cal_monthsforyear.f              \  
                 $(SOURCE_CODE)/cal_monthsperyear.f              \  
                 $(SOURCE_CODE)/cal_nstepday.f                   \  
                 $(SOURCE_CODE)/cal_numints.f                    \  
                 $(SOURCE_CODE)/cal_printdate.f                  \  
                 $(SOURCE_CODE)/cal_printerror.f                 \  
                 $(SOURCE_CODE)/cal_stepsforday.f                \  
                 $(SOURCE_CODE)/cal_stepsperday.f                \  
                 $(SOURCE_CODE)/cal_subdates.f                   \  
                 $(SOURCE_CODE)/cal_timeinterval.f               \  
                 $(SOURCE_CODE)/cal_timepassed.f                 \  
                 $(SOURCE_CODE)/cal_timestamp.f                  \  
                 $(SOURCE_CODE)/cal_toseconds.f                  \  
                 $(SOURCE_CODE)/cal_weekday.f                    \  
                                                                 \  
                 $(SOURCE_CODE)/obcs_apply_sloc.f                \  
                 $(SOURCE_CODE)/obcs_apply_tloc.f                \  
                 $(SOURCE_CODE)/obcs_apply_ts.f                  \  
                 $(SOURCE_CODE)/obcs_apply_uv.f                  \  
                 $(SOURCE_CODE)/obcs_calc.f                      \  
                 $(SOURCE_CODE)/obcs_init_variables.f            \  
                 $(SOURCE_CODE)/obcs_sponge.f                    \  
   
   
 #               $(SOURCE_CODE)/shap_filt_apply.f                \  
 #               $(SOURCE_CODE)/shap_filt_apply_ts.f             \  
 #               $(SOURCE_CODE)/shap_filt_tracer_s1.f            \  
 #               $(SOURCE_CODE)/shap_filt_tracer_s2.f            \  
 #               $(SOURCE_CODE)/shap_filt_tracer_s2g.f           \  
 #               $(SOURCE_CODE)/shap_filt_tracer_s4.f            \  
 #               $(SOURCE_CODE)/shap_filt_uv_s1.f                \  
 #               $(SOURCE_CODE)/shap_filt_uv_s2.f                \  
 #               $(SOURCE_CODE)/shap_filt_uv_s2g.f               \  
 #               $(SOURCE_CODE)/shap_filt_uv_s4.f                \  
248    
249    
250  #--------------------------------------------------------  #--------------------------------------------------------
251  # rules  # rules
252  #--------------------------------------------------------  #--------------------------------------------------------
253    
254  adcode:  allcode:
255          cd $(DEST) ; cat $(SRC_MODEL) >! tamc_code_ecco.f          cd $(DEST) ; cat $(SRC_MODEL) >! tamc_code_ecco.f
256    
257  admodeltamc:  admodeltamc:
258          cd $(DEST) ; $(TAMC) $(TAMCFLAG) tamc_code_ecco.f       \          cd $(DEST) ; $(TAMC) $(ADTAMCFLAG) tamc_code_ecco.f     \
259             >! tamc_code_ecco_ad.prot             >! tamc_code_ecco_ad.prot
260    
261  admodeltaf:  admodeltaf:
262          cd $(DEST) ; $(TAF) $(TAFFLAG) tamc_code_ecco.f          cd $(DEST) ; $(TAF) $(ADTAFFLAG) tamc_code_ecco.f
263    
264  adrestore:  tlmodeltamc:
265          cp $(PKG)/autodiff/adjoint_model.F_template     \          cd $(DEST) ; $(TAMC) $(TLTAMCFLAG) tamc_code_ecco.f     \
266             $(PKG)/autodiff/adjoint_model.F             >! tamc_code_ecco_tl.prot
267    
268    tlmodeltaf:
269            cd $(DEST) ; $(TAF) $(TLTAFFLAG) tamc_code_ecco.f
270    
271  adchange:  adchange:
272          ${ADJOINT_SCRIPT}/adjoint_ecco_sed.com          \          ${ADJOINT_SCRIPT}/adjoint_ecco_sed.com \
273             >! tamc_code_ecco_sed_ad.f ;                 \             >! tamc_code_ecco_sed_ad.f ;  \
274          cp $(PKG)/autodiff/adjoint_model.F              \          cp $(PKG)/autodiff/adjoint_model.F              \
275             $(PKG)/autodiff/adjoint_model.F_old ;        \             $(PKG)/autodiff/adjoint_model.F_old ;        \
         cp $(PKG)/autodiff/adjoint_model.F_template     \  
            $(PKG)/autodiff/adjoint_model.F;             \  
276          cat tamc_code_ecco_sed_ad.f >> $(PKG)/autodiff/adjoint_model.F          cat tamc_code_ecco_sed_ad.f >> $(PKG)/autodiff/adjoint_model.F
277    adrestore:
278            cp $(PKG)/autodiff/adjoint_model.F_template     \
279               $(PKG)/autodiff/adjoint_model.F
280    
281    tltamc:  allcode tlmodeltamc
282    
283    tltaf:  allcode tlmodeltaf
284    
285  adtamc:  adrestore adcode admodeltamc  adtamc:  adrestore allcode admodeltamc
286    
287  adtaf:  adrestore adcode admodeltaf  adtaf:  adrestore allcode admodeltaf

Legend:
Removed from v.1.16.4.4  
changed lines
  Added in v.1.18

  ViewVC Help
Powered by ViewVC 1.1.22