max_hfx to diagnose computation of fgrnhfx around max
[wrf-fire-matlab.git] / femwind / fortran / Makefile
blob7b4be8fb7a51ff769532cb127d0829cbae4c5b28
1 #FC = gfortran
2 #FC = ifort
3 FFLAGS = -g -C --ffpe-trap=invalid,zero,overflow,underflow -traceback -fpe0 # intel debug
4 FFLAGS = -O3 -fdefault-real-8 # gnu
5 FFLAGS = -g -C -fpe0 -r8 # intel debug
6 FFLAGS = -g -C -fdefault-real-8
7 FFLAGS = -O3 -pg
8 FFLAGS = -g -C -I /opt/local/include
9 LFLAGS = -L/opt/local/lib -lnetcdf -l netcdff
10 FFLAGS = -pg -O3 -I $(NETCDF)/include
11 FFLAGS = -O3 -I $(NETCDF)/include
12 #FFLAGS = -g -C -I $(NETCDF)/include
13 LFLAGS = -L$(NETCDF)/lib -lnetcdf -lnetcdff
15 default: all
17 wrf: femwind_wrfout.exe
19 tests: clean_txt\
20 hexa_test.exe\
21 ndt_mult_test.exe\
22 sweeps_test.exe\
23 f_assembly_test.exe\
24 prolongation_test.exe\
25 restriction_test.exe\
26 ndt_assembly_test.exe\
27 w_assembly_test.exe\
28 coarsening_icl_test.exe\
29 ndt_boundary_conditions_test.exe\
30 vec_boundary_conditions_test.exe\
31 femwind_test.exe\
32 netcdf_test.exe
34 all: wrf tests
36 hexa_test.exe: hexa_test.o module_hexa.o module_utils.o Makefile
37 $(FC) $(FFLAGS) -o hexa_test.exe hexa_test.o module_hexa.o module_utils.o
39 module_hexa.o: module_hexa.f90 module_utils.o Makefile
40 $(FC) $(FFLAGS) -c module_hexa.f90
42 hexa_test.o: hexa_test.f90 module_hexa.o module_utils.o Makefile
43 $(FC) $(FFLAGS) -c hexa_test.f90
45 module_utils.o: module_utils.f90 Makefile
46 $(FC) $(FFLAGS) -c module_utils.f90
48 module_netcdf.o: module_utils.o module_netcdf.f90 Makefile
49 $(FC) $(FFLAGS) -c module_netcdf.f90
51 module_wrfout.o: module_wrfout.f90 module_netcdf.o Makefile
52 $(FC) $(FFLAGS) -c module_wrfout.f90
54 module_common.o: module_common.f90 module_utils.o Makefile
55 $(FC) $(FFLAGS) -c module_common.f90
57 module_ndt_mult.o: module_ndt_mult.f90 module_utils.o Makefile
58 $(FC) $(FFLAGS) -c module_ndt_mult.f90
60 ndt_mult_test.exe: ndt_mult_test.f90 module_ndt_mult.o module_utils.o Makefile
61 $(FC) $(FFLAGS) -o ndt_mult_test.exe ndt_mult_test.f90 module_ndt_mult.o module_utils.o
63 sweeps_test.exe: sweeps_test.o module_sweeps.o module_utils.o Makefile
64 $(FC) $(FFLAGS) -o sweeps_test.exe sweeps_test.f90 module_sweeps.o module_utils.o
66 module_sweeps.o: module_sweeps.f90 module_utils.o Makefile
67 $(FC) $(FFLAGS) -c module_sweeps.f90
69 sweeps_test.o: sweeps_test.f90 module_sweeps.o module_utils.o Makefile
70 $(FC) $(FFLAGS) -c sweeps_test.f90
72 ndt_assembly_test.exe: ndt_assembly_test.o module_ndt_assembly.o module_utils.o module_hexa.o Makefile
73 $(FC) $(FFLAGS) -o ndt_assembly_test.exe ndt_assembly_test.o module_ndt_assembly.o module_utils.o module_hexa.o
75 ndt_assembly_test.o: ndt_assembly_test.f90 module_hexa.o module_utils.o module_ndt_assembly.o Makefile
76 $(FC) $(FFLAGS) -c ndt_assembly_test.f90
78 module_ndt_assembly.o: module_ndt_assembly.f90 module_hexa.o Makefile
79 $(FC) $(FFLAGS) -c module_ndt_assembly.f90
81 f_assembly_test.exe: f_assembly_test.f90 module_f_assembly.o module_utils.o module_hexa.o Makefile
82 $(FC) $(FFLAGS) -o f_assembly_test.exe f_assembly_test.f90 module_f_assembly.o module_utils.o module_hexa.o
84 module_f_assembly.o: module_f_assembly.f90 module_hexa.o module_utils.o Makefile
85 $(FC) $(FFLAGS) -c module_f_assembly.f90
87 module_coarsening.o: module_coarsening.f90 module_hexa.o Makefile
88 $(FC) $(FFLAGS) -c module_coarsening.f90
90 PROLONGATION = prolongation_test.f90 module_coarsening.o module_utils.o
91 prolongation_test.exe: $(PROLONGATION)
92 $(FC) $(FFLAGS) -o prolongation_test.exe $(PROLONGATION)
94 RESTRICTION = restriction_test.f90 module_coarsening.o module_utils.o
95 restriction_test.exe: $(RESTRICTION) Makefile
96 $(FC) $(FFLAGS) -o restriction_test.exe $(RESTRICTION)
98 ICL = coarsening_icl_test.f90 module_coarsening.o module_utils.o
99 coarsening_icl_test.exe: $(ICL) Makefile
100 $(FC) $(FFLAGS) -o $@ $(ICL)
102 module_boundary_conditions.o: module_boundary_conditions.f90 module_utils.o Makefile
103 $(FC) $(FFLAGS) -c module_boundary_conditions.f90
105 NDT_BOUNDARY_CONDITIONS = ndt_boundary_conditions_test.f90 module_boundary_conditions.o module_utils.o
106 ndt_boundary_conditions_test.exe: $(NDT_BOUNDARY_CONDITIONS) Makefile
107 $(FC) $(FFLAGS) -o $@ $(NDT_BOUNDARY_CONDITIONS)
109 VEC_BOUNDARY_CONDITIONS = vec_boundary_conditions_test.f90 module_boundary_conditions.o module_utils.o
110 vec_boundary_conditions_test.exe: $(VEC_BOUNDARY_CONDITIONS) Makefile
111 $(FC) $(FFLAGS) -o $@ $(VEC_BOUNDARY_CONDITIONS)
113 w_assembly_test.exe: w_assembly_test.o module_w_assembly.o module_utils.o module_hexa.o module_lin_alg.o Makefile
114 $(FC) $(FFLAGS) -o w_assembly_test.exe w_assembly_test.o module_w_assembly.o module_utils.o module_hexa.o module_lin_alg.o
116 w_assembly_test.o: w_assembly_test.f90 module_hexa.o module_utils.o module_w_assembly.o Makefile
117 $(FC) $(FFLAGS) -c w_assembly_test.f90
119 module_w_assembly.o: module_w_assembly.f90 module_hexa.o module_lin_alg.o Makefile
120 $(FC) $(FFLAGS) -c module_w_assembly.f90
122 module_lin_alg.o: module_lin_alg.f90 Makefile
123 $(FC) $(FFLAGS) -c module_lin_alg.f90
125 module_multigrid.o: module_sweeps.o module_multigrid.f90 module_coarsening.o module_ndt_mult.o module_ndt_assembly.o module_boundary_conditions.o module_common.o module_utils.o Makefile
126 $(FC) $(FFLAGS) -c module_multigrid.f90
128 module_femwind.o: module_femwind.f90 module_multigrid.o module_f_assembly.o module_w_assembly.o module_boundary_conditions.o module_common.o module_utils.o Makefile
129 $(FC) $(FFLAGS) -c module_femwind.f90
131 FEMWIND_MODULES = \
132 module_femwind.o\
133 module_multigrid.o\
134 module_ndt_assembly.o\
135 module_w_assembly.o\
136 module_ndt_mult.o\
137 module_lin_alg.o\
138 module_f_assembly.o\
139 module_hexa.o\
140 module_coarsening.o\
141 module_sweeps.o\
142 module_boundary_conditions.o\
143 module_utils.o \
144 module_common.o
146 femwind_test.exe: femwind_test.f90 $(FEMWIND_MODULES) Makefile
147 $(FC) $(FFLAGS) -o $@ femwind_test.f90 $(FEMWIND_MODULES)
149 WRFOUT_MODULES = \
150 module_netcdf.o \
151 module_wrfout.o
153 FEMWIND_WRFOUT = femwind_wrfout.f90 $(WRFOUT_MODULES) $(FEMWIND_MODULES)
155 femwind_wrfout.exe: $(FEMWIND_WRFOUT) Makefile
156 $(FC) $(FFLAGS) -o $@ $(FEMWIND_WRFOUT) $(LFLAGS)
158 NETCDF_TEST = netcdf_test.f90 $(WRFOUT_MODULES) module_utils.o
160 netcdf_test.exe: $(NETCDF_TEST) Makefile
161 $(FC) $(FFLAGS) -o $@ $(NETCDF_TEST) $(LFLAGS)
163 # delete test data files
164 clean_txt:
165 rm -f ../*.txt
167 clean: clean_txt
168 rm -f *.mod *.o *.exe *.dSYM