source: palm/trunk/SOURCE/Makefile @ 1212

Last change on this file since 1212 was 1212, checked in by raasch, 11 years ago

tridia-solver moved to seperate module; the tridiagonal matrix coefficients of array tri are calculated only once at the beginning

  • Property svn:keywords set to Id
File size: 12.9 KB
Line 
1#--------------------------------------------------------------------------------#
2# This file is part of PALM.
3#
4# PALM is free software: you can redistribute it and/or modify it under the terms
5# of the GNU General Public License as published by the Free Software Foundation,
6# either version 3 of the License, or (at your option) any later version.
7#
8# PALM is distributed in the hope that it will be useful, but WITHOUT ANY
9# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
10# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
11#
12# You should have received a copy of the GNU General Public License along with
13# PALM. If not, see <http://www.gnu.org/licenses/>.
14#
15# Copyright 1997-2012  Leibniz University Hannover
16#--------------------------------------------------------------------------------#
17#
18# WARNING: don't write filenames with extension .f90 in this header!!!!
19#
20# Current revisions:
21# ------------------
22# +tridia_solver, -poisfft_hybrid
23#
24# Former revisions:
25# -----------------
26# $Id: Makefile 1212 2013-08-15 08:46:27Z raasch $
27#
28# 1210 2013-08-14 10:58:20Z raasch
29# object file list replaced by one line statement
30#
31# 1128 2013-04-12 06:19:32Z raasch
32# dependencies for time_integration modified
33#
34# 1111 2013-03-08 23:54:10Z raasch
35# dependencies removed from init_pegrid
36# bugfix: dependency added for cuda_fft_interfaces
37#
38# 1106 2013-03-04 05:31:38Z raasch
39# +cuda_fft_interfaces
40#
41# 1053 2012-11-13 17:11:03Z hoffmann
42# +microphysics for two-moment cloud physics
43#
44# 1036 2012-10-22 13:43:42Z raasch
45# code put under GPL (PALM 3.9)
46#
47# 1001 2012-09-13 14:08:46Z raasch
48# -asselin_filter, advec_s|u|v|w_ups, spline_x|y|z
49#
50# 872 2012-03-29 15:57:54Z franke
51# lpm depends on modules
52#
53# 849 2012-03-15 10:35:09Z raasch
54# +lpm_advec, lpm_data_output_particles, lpm_droplet_collision,
55# lpm_droplet_condensation,
56# lpm_exchange_horiz, lpm_extend_particle_array, lpm_extend_tails,
57# lpm_extend_tail_array, lpm_init_sgs_tke, lpm_pack_arrays,
58# lpm_read_restart_file, lpm_release_set, lpm_sort_arrays,
59# lpm_write_exchange_statistics, lpm_write_restart_file
60# advec_particles renamed lpm,
61# init_particles renamed lpm_init,
62# user_advec_particles renamed user_lpm_advec,
63# particle_boundary_conds renamed lpm_boundary_conds,
64# set_particle_attributes renamed lpm_set_attributes
65# user_init_particles renamed user_lpm_init,
66# user_particle_attributes renamed user_lpm_set_attributes
67#
68# 828 2012-02-21 12:00:36Z raasch
69# init_particles depends on lpm_collision_kernels
70#
71# 825 2012-02-19 03:03:44Z raasch
72# wang_kernel renamed lpm_collision_kernels
73#
74# 790 2011-11-29 03:11:20Z raasch
75# +wang_kernel
76#
77# 667 2010-12-23 12:06:00Z suehring/gryschka
78# +advec_ws
79#
80# 421 2010-01-25 15:50:10Z raasch
81# comment line for simple install method added, which will be replaced
82# by an include command for preprocessor and compiler options when the simple
83# install process is used instead of mbuild/mrun,
84# +set_particle_attributes, set_slicer_attributes_dvrp
85# +subsidence
86#
87# 410 2009-12-04 17:05:40Z letzel
88# +data_output_mask, init_masks, user_data_output_mask
89#
90# 217 2008-12-09 18:00:48Z letzel
91# former file user_interface split into one file per subroutine
92# +init_coupling, message
93#
94# 151 2008-03-07 13:42:18Z raasch
95# +plant_canopy_model, inflow_turbulence
96# +surface_coupler
97#
98# 96 2007-06-04 08:07:41Z raasch
99# +eqn_state_seawater, init_ocean
100#
101# 82 2007-04-16 15:40:52Z raasch
102# +local_flush
103#
104# 58 2007-03-09 14:27:38Z raasch
105# default suffixes removed from the suffix list to avoid calling of m2c in
106# case of .mod files
107# +wall_fluxes, +particle_boundary_conds
108#
109# RCS Log replace by Id keyword, revision history cleaned up
110#
111# Revision 1.13  2006/08/04 14:45:31  raasch
112# +data_output_ptseries
113#
114# Revision 1.1  2002/06/11 13:42:20  raasch
115# Initial revision
116#
117#
118# Description:
119# ------------
120# Makefile for the parallelized LES model (PALM) to be used by the
121# shellscript "mrun"
122#------------------------------------------------------------------------------!
123
124PROG =  palm
125
126SOURCES = advec_s_bc.f90 advec_s_pw.f90 advec_s_up.f90 advec_ws.f90 \
127        advec_u_pw.f90 advec_u_up.f90 advec_v_pw.f90 advec_v_up.f90 \
128        advec_w_pw.f90 advec_w_up.f90 average_3d_data.f90 boundary_conds.f90 \
129        buoyancy.f90 calc_liquid_water_content.f90 calc_precipitation.f90 \
130        calc_radiation.f90 calc_spectra.f90 check_for_restart.f90 \
131        check_open.f90 check_parameters.f90 close_file.f90 compute_vpt.f90 \
132        coriolis.f90 cpu_log.f90 cpu_statistics.f90 cuda_fft_interfaces.f90 \
133        data_log.f90 \
134        data_output_dvrp.f90 data_output_mask.f90 data_output_profiles.f90 \
135        data_output_ptseries.f90 data_output_spectra.f90 \
136        data_output_tseries.f90 data_output_2d.f90 data_output_3d.f90 \
137        diffusion_e.f90 diffusion_s.f90 diffusion_u.f90 diffusion_v.f90 \
138        diffusion_w.f90 diffusivities.f90 disturb_field.f90 \
139        disturb_heatflux.f90 eqn_state_seawater.f90 exchange_horiz.f90 \
140        exchange_horiz_2d.f90 fft_xy.f90 flow_statistics.f90 \
141        global_min_max.f90 header.f90 impact_of_latent_heat.f90 \
142        inflow_turbulence.f90 init_1d_model.f90 init_3d_model.f90 \
143        init_advec.f90 init_cloud_physics.f90 init_coupling.f90 init_dvrp.f90 \
144        init_grid.f90 init_masks.f90 init_ocean.f90 \
145        init_pegrid.f90 init_pt_anomaly.f90 init_rankine.f90 init_slope.f90 \
146        interaction_droplets_ptq.f90 local_flush.f90 local_getenv.f90 \
147        local_stop.f90 local_system.f90 local_tremain.f90 \
148        local_tremain_ini.f90 lpm.f90 lpm_advec.f90 lpm_boundary_conds.f90 \
149        lpm_calc_liquid_water_content.f90 lpm_collision_kernels.f90 \
150        lpm_data_output_particles.f90 lpm_droplet_collision.f90 \
151        lpm_droplet_condensation.f90 lpm_exchange_horiz.f90 \
152        lpm_extend_particle_array.f90 lpm_extend_tails.f90 \
153        lpm_extend_tail_array.f90 lpm_init.f90 lpm_init_sgs_tke.f90 \
154        lpm_pack_arrays.f90 lpm_read_restart_file.f90 lpm_release_set.f90 \
155        lpm_set_attributes.f90 lpm_sort_arrays.f90 \
156        lpm_write_exchange_statistics.f90 lpm_write_restart_file.f90 \
157        message.f90 microphysics.f90 modules.f90 netcdf.f90 package_parin.f90 \
158        palm.f90 parin.f90 plant_canopy_model.f90 poisfft.f90 \
159        poismg.f90 prandtl_fluxes.f90 pres.f90 print_1d.f90 \
160        production_e.f90 prognostic_equations.f90 random_function.f90 \
161        random_gauss.f90 read_3d_binary.f90 read_var_list.f90 run_control.f90 \
162        set_slicer_attributes_dvrp.f90 singleton.f90 sor.f90 \
163        subsidence.f90 sum_up_3d_data.f90 \
164        surface_coupler.f90 swap_timelevel.f90 temperton_fft.f90 \
165        time_integration.f90 time_to_string.f90 timestep.f90 \
166        timestep_scheme_steering.f90 transpose.f90 tridia_solver.f90 \
167        user_3d_data_averaging.f90 \
168        user_actions.f90 user_additional_routines.f90 \
169        user_check_data_output.f90 user_check_data_output_pr.f90 \
170        user_check_parameters.f90 user_data_output_2d.f90 \
171        user_data_output_3d.f90 user_data_output_dvrp.f90 \
172        user_data_output_mask.f90 user_define_netcdf_grid.f90 \
173        user_dvrp_coltab.f90 user_header.f90 user_init.f90 \
174        user_init_3d_model.f90 user_init_grid.f90 \
175        user_init_plant_canopy.f90 user_last_actions.f90 user_lpm_advec.f90 \
176        user_lpm_init.f90 user_lpm_set_attributes.f90 user_module.f90 \
177        user_parin.f90 user_read_restart_data.f90 \
178        user_spectra.f90 user_statistics.f90 wall_fluxes.f90 \
179        write_3d_binary.f90 write_compressed.f90 write_var_list.f90
180
181OBJS=$(SOURCES:.f90=.o)
182
183CC = cc
184CFLAGS = -O
185
186F90 =
187COPT =
188F90FLAGS =
189LDFLAGS =
190
191#to_be_replaced_by_include
192
193.SUFFIXES:
194.SUFFIXES: .o .f90
195
196
197all: $(PROG)
198
199$(PROG): $(OBJS)
200        $(F90) -o $(PROG) $(OBJS) $(LDFLAGS)
201
202clean:
203        rm -f $(PROG) $(OBJS) *.mod *.i *.lst
204
205.f90.o:
206        $(F90) $(F90FLAGS) $(COPT) -c $<
207
208
209
210advec_particles.o: modules.o
211advec_s_bc.o: modules.o
212advec_s_pw.o: modules.o
213advec_s_up.o: modules.o
214advec_u_pw.o: modules.o
215advec_u_up.o: modules.o
216advec_v_pw.o: modules.o
217advec_v_up.o: modules.o
218advec_ws.o: modules.o
219advec_w_pw.o: modules.o
220advec_w_up.o: modules.o
221average_3d_data.o: modules.o
222boundary_conds.o: modules.o
223buoyancy.o: modules.o
224calc_liquid_water_content.o: modules.o
225calc_precipitation.o: modules.o
226calc_radiation.o: modules.o
227calc_spectra.o: modules.o fft_xy.o
228check_for_restart.o: modules.o
229check_open.o: modules.o
230check_parameters.o: modules.o subsidence.o
231close_file.o: modules.o
232compute_vpt.o: modules.o
233coriolis.o: modules.o
234cpu_log.o: modules.o
235cpu_statistics.o: modules.o
236cuda_fft_interfaces.o: cuda_fft_interfaces.f90 modules.o
237data_log.o: modules.o
238data_output_dvrp.o: modules.o
239data_output_mask.o: modules.o
240data_output_profiles.o: modules.o
241data_output_ptseries.o: modules.o
242data_output_spectra.o: modules.o
243data_output_tseries.o: modules.o
244data_output_2d.o: modules.o
245data_output_3d.o: modules.o
246diffusion_e.o: modules.o
247diffusion_s.o: modules.o
248diffusion_u.o: modules.o wall_fluxes.o
249diffusion_v.o: modules.o wall_fluxes.o
250diffusion_w.o: modules.o wall_fluxes.o
251diffusivities.o: modules.o
252disturb_field.o: modules.o random_function.o
253disturb_heatflux.o: modules.o
254eqn_state_seawater.o: modules.o
255exchange_horiz.o: modules.o
256exchange_horiz_2d.o: modules.o
257fft_xy.o: cuda_fft_interfaces.o modules.o singleton.o temperton_fft.o
258flow_statistics.o: modules.o
259global_min_max.o: modules.o
260header.o: modules.o subsidence.o
261impact_of_latent_heat.o: modules.o
262inflow_turbulence.o: modules.o
263init_1d_model.o: modules.o
264init_3d_model.o: modules.o random_function.o advec_ws.o
265init_advec.o: modules.o
266init_cloud_physics.o: modules.o
267init_coupling.o: modules.o
268init_dvrp.o: modules.o
269init_grid.o: modules.o
270init_masks.o: modules.o
271init_ocean.o: modules.o eqn_state_seawater.o
272init_pegrid.o: modules.o
273init_pt_anomaly.o: modules.o
274init_rankine.o: modules.o
275init_slope.o: modules.o
276interaction_droplets_ptq.o: modules.o
277local_getenv.o: modules.o
278local_stop.o: modules.o
279local_tremain.o: modules.o
280local_tremain_ini.o: modules.o
281lpm.o: modules.o
282lpm_advec.o: modules.o
283lpm_boundary_conds.o: modules.o
284lpm_calc_liquid_water_content.o: modules.o
285lpm_collision_kernels.o: modules.o user_module.o
286lpm_data_output_particles.o: modules.o
287lpm_droplet_collision.o: modules.o lpm_collision_kernels.o
288lpm_droplet_condensation.o: modules.o lpm_collision_kernels.o
289lpm_exchange_horiz.o: modules.o
290lpm_extend_particle_array.o: modules.o
291lpm_extend_tails.o: modules.o
292lpm_extend_tail_array.o: modules.o
293lpm_init.o: modules.o lpm_collision_kernels.o random_function.o
294lpm_init_sgs_tke.o: modules.o
295lpm_pack_arrays.o: modules.o
296lpm_read_restart_file.o: modules.o
297lpm_release_set.o: modules.o random_function.o
298lpm_set_attributes.o: modules.o
299lpm_sort_arrays.o: modules.o
300lpm_write_exchange_statistics.o: modules.o
301lpm_write_restart_file.o: modules.o
302message.o: modules.o
303microphysics.o: modules.o
304modules.o: modules.f90
305netcdf.o: modules.o
306package_parin.o: modules.o
307palm.o: modules.o
308parin.o: modules.o
309plant_canopy_model.o: modules.o
310poisfft.o: modules.o fft_xy.o tridia_solver.o
311poismg.o: modules.o
312prandtl_fluxes.o: modules.o
313pres.o: modules.o poisfft.o
314print_1d.o: modules.o
315production_e.o: modules.o wall_fluxes.o
316prognostic_equations.o: modules.o advec_s_pw.o advec_s_up.o advec_u_pw.o \
317        advec_u_up.o advec_v_pw.o advec_v_up.o advec_w_pw.o advec_w_up.o  \
318        advec_ws.o buoyancy.o calc_precipitation.o calc_radiation.o coriolis.o \
319        diffusion_e.o diffusion_s.o diffusion_u.o diffusion_v.o diffusion_w.o \
320        eqn_state_seawater.o impact_of_latent_heat.o microphysics.o \
321        plant_canopy_model.o production_e.o subsidence.o user_actions.o
322random_gauss.o: random_function.o
323read_3d_binary.o: modules.o random_function.o
324read_var_list.o: modules.o
325run_control.o: modules.o
326set_slicer_attributes_dvrp.o: modules.o
327singleton.o: singleton.f90
328sor.o: modules.o
329subsidence.o: modules.o
330sum_up_3d_data.o: modules.o
331surface_coupler.o: modules.o
332swap_timelevel.o: modules.o
333temperton_fft.o: modules.o
334time_integration.o: modules.o advec_ws.o buoyancy.o interaction_droplets_ptq.o \
335        production_e.o prognostic_equations.o user_actions.o
336timestep.o: modules.o
337timestep_scheme_steering.o: modules.o
338transpose.o: modules.o
339tridia_solver.o: modules.o
340user_3d_data_averaging.o: modules.o user_module.o
341user_actions.o: modules.o user_module.o
342user_additional_routines.o: modules.o user_module.o
343user_check_data_output.o: modules.o user_module.o
344user_check_data_output_pr.o: modules.o user_module.o
345user_check_parameters.o: modules.o user_module.o
346user_data_output_2d.o: modules.o user_module.o
347user_data_output_3d.o: modules.o user_module.o
348user_data_output_mask.o: modules.o user_module.o
349user_data_output_dvrp.o: modules.o user_module.o
350user_define_netcdf_grid.o: modules.o user_module.o
351user_dvrp_coltab.o: modules.o user_module.o
352user_header.o: modules.o user_module.o
353user_init.o: modules.o user_module.o
354user_init_3d_model.o: modules.o user_module.o
355user_init_grid.o: modules.o user_module.o
356user_init_plant_canopy.o: modules.o user_module.o
357user_last_actions.o: modules.o user_module.o
358user_lpm_advec.o: modules.o user_module.o
359user_lpm_init.o: modules.o user_module.o
360user_lpm_set_attributes.o: modules.o user_module.o
361user_module.o: user_module.f90
362user_parin.o: modules.o user_module.o
363user_read_restart_data.o: modules.o user_module.o
364user_spectra.o: modules.o user_module.o
365user_statistics.o: modules.o user_module.o
366wall_fluxes.o: modules.o
367write_3d_binary.o: modules.o random_function.o
368write_compressed.o: modules.o
369write_var_list.o: modules.o
Note: See TracBrowser for help on using the repository browser.