source: palm/trunk/SOURCE/Makefile @ 1400

Last change on this file since 1400 was 1400, checked in by knoop, 10 years ago

Parallel random number generator added (preliminary version).

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