SHELL = /bin/bash FLEXPART_EXECUTABLE = flexpart_ifort GRIB2FLEXPART_EXECUTABLE = grib2flexpart_ifort ############################################# DEFS = -DCTBTO ############################################# # Set up for devlan ifort INTEL_ROOT = /cots/intel/composer_xe_2013.2.146 GRIB_API_ROOT = /dvl/atm/klinkl/src/ifort_grib_api/grib_api-1.12.3 FC = $(INTEL_ROOT)/bin/ifort INCPATH = $(GRIB_API_ROOT)/fortran LIBPATH1 = $(GRIB_API_ROOT)/fortran/.libs LIBPATH2 = $(GRIB_API_ROOT)/src/.libs FFLAGS = -O2 -mcmodel=medium -convert little_endian -I$(INCPATH) LDFLAGS = $(FFLAGS) -L$(LIBPATH2) -L$(LIBPATH1) -lgrib_api_f90 -lgrib_api -lm -ljasper MODOBJS = \ par_mod.o com_mod.o \ conv_mod.o hanna_mod.o \ interpol_mod.o cmapf_mod.o \ unc_mod.o oh_mod.o \ xmass_mod.o flux_mod.o \ point_mod.o outg_mod.o \ fpmetbinary_mod.o class_vtable_mod.o OBJECTS = \ grib2check.o fpgridcheck.o \ writeheader.o assignland.o\ calcpar.o part0.o \ calcpar_gfs.o detectformat.o \ caldate.o partdep.o \ coordtrafo.o psih.o \ raerod.o convertfields.o \ drydepokernel.o random.o \ erf.o readavailable.o \ ew.o readcommand.o \ advance.o readdepo.o \ releaseparticles.o psim.o \ readlanduse.o getfpfields.o \ getfields.o init_domainfill.o\ interpol_wind.o readoutgrid.o \ interpol_all.o readpaths.o \ getrb.o readreceptors.o \ getrc.o readreleases.o \ getvdep.o readspecies.o \ interpol_misslev.o readwind.o \ readwind_gfs.o richardson_gfs.o \ conccalc.o richardson.o \ concoutput.o scalev.o \ pbl_profile.o readOHfield.o\ juldate.o timemanager.o \ interpol_vdep.o interpol_rain.o \ verttransform_gfs.o partoutput.o \ verttransform.o \ hanna.o wetdepokernel.o \ mean.o wetdepo.o \ hanna_short.o windalign.o \ obukhov_gfs.o gridcheck_gfs.o \ obukhov.o gridcheck.o \ hanna1.o initialize.o \ gridcheck_nests.o \ readwind_nests.o calcpar_nests.o \ verttransform_nests.o interpol_all_nests.o \ interpol_wind_nests.o interpol_misslev_nests.o \ interpol_vdep_nests.o interpol_rain_nests.o \ readageclasses.o readpartpositions.o \ calcfluxes.o fluxoutput.o \ qvsat.o skplin.o \ convmix.o calcmatrix.o \ convmix_gfs.o calcmatrix_gfs.o \ convect43c.o redist.o \ sort2.o distance.o \ centerofmass.o plumetraj.o \ openouttraj.o calcpv.o \ calcpv_nests.o distance2.o \ clustering.o interpol_wind_short.o \ interpol_wind_short_nests.o shift_field_0.o \ shift_field.o outgrid_init.o \ openreceptors.o boundcond_domainfill.o\ partoutput_short.o readoutgrid_nest.o \ outgrid_init_nest.o writeheader_nest.o \ concoutput_nest.o wetdepokernel_nest.o \ drydepokernel_nest.o zenithangle.o \ ohreaction.o getvdep_nests.o \ initial_cond_calc.o initial_cond_output.o \ dynamic_viscosity.o get_settling.o all: $(FLEXPART_EXECUTABLE) $(GRIB2FLEXPART_EXECUTABLE) flexpart: $(FLEXPART_EXECUTABLE) grib2flexpart: $(GRIB2FLEXPART_EXECUTABLE) $(FLEXPART_EXECUTABLE): $(MODOBJS) $(OBJECTS) FLEXPART.o $(FC) FLEXPART.o $(OBJECTS) $(MODOBJS) -o $(FLEXPART_EXECUTABLE) $(LDFLAGS) $(GRIB2FLEXPART_EXECUTABLE): $(MODOBJS) $(OBJECTS) GRIB2FLEXPART.o $(FC) GRIB2FLEXPART.o $(OBJECTS) $(MODOBJS) -o $(GRIB2FLEXPART_EXECUTABLE) $(LDFLAGS) $(OBJECTS): $(MODOBJS) FLEXPART.o: $(MODOBJS) GRIB2FLEXPART.o: $(MODOBJS) %.o: %.f90 $(FC) -c $(FFLAGS) $< %.o: %.F90 $(FC) -c $(FFLAGS) $(DEFS) $< clean: rm -f *.o *.mod