#--------------------------------------------------------------------------------# # This file is part of PALM. # # PALM is free software: you can redistribute it and/or modify it under the terms # of the GNU General Public License as published by the Free Software Foundation, # either version 3 of the License, or (at your option) any later version. # # PALM is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # PALM. If not, see . # # Copyright 1997-2012 Leibniz University Hannover #--------------------------------------------------------------------------------# # # WARNING: don't write filenames with extension .f90 in this header!!!! # # Current revisions: # ------------------ # # # Former revisions: # ----------------- # $Id: Makefile 1242 2013-10-30 11:50:11Z fricke $ # # 1241 2013-10-30 11:36:58Z heinze # +nudging, ls_forcing # # 1212 2013-08-15 08:46:27Z raasch # +tridia_solver, -poisfft_hybrid # # 1210 2013-08-14 10:58:20Z raasch # object file list replaced by one line statement # # 1128 2013-04-12 06:19:32Z raasch # dependencies for time_integration modified # # 1111 2013-03-08 23:54:10Z raasch # dependencies removed from init_pegrid # bugfix: dependency added for cuda_fft_interfaces # # 1106 2013-03-04 05:31:38Z raasch # +cuda_fft_interfaces # # 1053 2012-11-13 17:11:03Z hoffmann # +microphysics for two-moment cloud physics # # 1036 2012-10-22 13:43:42Z raasch # code put under GPL (PALM 3.9) # # 1001 2012-09-13 14:08:46Z raasch # -asselin_filter, advec_s|u|v|w_ups, spline_x|y|z # # 872 2012-03-29 15:57:54Z franke # lpm depends on modules # # 849 2012-03-15 10:35:09Z raasch # +lpm_advec, lpm_data_output_particles, lpm_droplet_collision, # lpm_droplet_condensation, # lpm_exchange_horiz, lpm_extend_particle_array, lpm_extend_tails, # lpm_extend_tail_array, lpm_init_sgs_tke, lpm_pack_arrays, # lpm_read_restart_file, lpm_release_set, lpm_sort_arrays, # lpm_write_exchange_statistics, lpm_write_restart_file # advec_particles renamed lpm, # init_particles renamed lpm_init, # user_advec_particles renamed user_lpm_advec, # particle_boundary_conds renamed lpm_boundary_conds, # set_particle_attributes renamed lpm_set_attributes # user_init_particles renamed user_lpm_init, # user_particle_attributes renamed user_lpm_set_attributes # # 828 2012-02-21 12:00:36Z raasch # init_particles depends on lpm_collision_kernels # # 825 2012-02-19 03:03:44Z raasch # wang_kernel renamed lpm_collision_kernels # # 790 2011-11-29 03:11:20Z raasch # +wang_kernel # # 667 2010-12-23 12:06:00Z suehring/gryschka # +advec_ws # # 421 2010-01-25 15:50:10Z raasch # comment line for simple install method added, which will be replaced # by an include command for preprocessor and compiler options when the simple # install process is used instead of mbuild/mrun, # +set_particle_attributes, set_slicer_attributes_dvrp # +subsidence # # 410 2009-12-04 17:05:40Z letzel # +data_output_mask, init_masks, user_data_output_mask # # 217 2008-12-09 18:00:48Z letzel # former file user_interface split into one file per subroutine # +init_coupling, message # # 151 2008-03-07 13:42:18Z raasch # +plant_canopy_model, inflow_turbulence # +surface_coupler # # 96 2007-06-04 08:07:41Z raasch # +eqn_state_seawater, init_ocean # # 82 2007-04-16 15:40:52Z raasch # +local_flush # # 58 2007-03-09 14:27:38Z raasch # default suffixes removed from the suffix list to avoid calling of m2c in # case of .mod files # +wall_fluxes, +particle_boundary_conds # # RCS Log replace by Id keyword, revision history cleaned up # # Revision 1.13 2006/08/04 14:45:31 raasch # +data_output_ptseries # # Revision 1.1 2002/06/11 13:42:20 raasch # Initial revision # # # Description: # ------------ # Makefile for the parallelized LES model (PALM) to be used by the # shellscript "mrun" #------------------------------------------------------------------------------! PROG = palm SOURCES = advec_s_bc.f90 advec_s_pw.f90 advec_s_up.f90 advec_ws.f90 \ advec_u_pw.f90 advec_u_up.f90 advec_v_pw.f90 advec_v_up.f90 \ advec_w_pw.f90 advec_w_up.f90 average_3d_data.f90 boundary_conds.f90 \ buoyancy.f90 calc_liquid_water_content.f90 calc_precipitation.f90 \ calc_radiation.f90 calc_spectra.f90 check_for_restart.f90 \ check_open.f90 check_parameters.f90 close_file.f90 compute_vpt.f90 \ coriolis.f90 cpu_log.f90 cpu_statistics.f90 cuda_fft_interfaces.f90 \ data_log.f90 \ data_output_dvrp.f90 data_output_mask.f90 data_output_profiles.f90 \ data_output_ptseries.f90 data_output_spectra.f90 \ data_output_tseries.f90 data_output_2d.f90 data_output_3d.f90 \ diffusion_e.f90 diffusion_s.f90 diffusion_u.f90 diffusion_v.f90 \ diffusion_w.f90 diffusivities.f90 disturb_field.f90 \ disturb_heatflux.f90 eqn_state_seawater.f90 exchange_horiz.f90 \ exchange_horiz_2d.f90 fft_xy.f90 flow_statistics.f90 \ global_min_max.f90 header.f90 impact_of_latent_heat.f90 \ inflow_turbulence.f90 init_1d_model.f90 init_3d_model.f90 \ init_advec.f90 init_cloud_physics.f90 init_coupling.f90 init_dvrp.f90 \ init_grid.f90 init_masks.f90 init_ocean.f90 \ init_pegrid.f90 init_pt_anomaly.f90 init_rankine.f90 init_slope.f90 \ interaction_droplets_ptq.f90 local_flush.f90 local_getenv.f90 \ local_stop.f90 local_system.f90 local_tremain.f90 \ local_tremain_ini.f90 lpm.f90 lpm_advec.f90 lpm_boundary_conds.f90 \ lpm_calc_liquid_water_content.f90 lpm_collision_kernels.f90 \ lpm_data_output_particles.f90 lpm_droplet_collision.f90 \ lpm_droplet_condensation.f90 lpm_exchange_horiz.f90 \ lpm_extend_particle_array.f90 lpm_extend_tails.f90 \ lpm_extend_tail_array.f90 lpm_init.f90 lpm_init_sgs_tke.f90 \ lpm_pack_arrays.f90 lpm_read_restart_file.f90 lpm_release_set.f90 \ lpm_set_attributes.f90 lpm_sort_arrays.f90 \ lpm_write_exchange_statistics.f90 lpm_write_restart_file.f90 \ ls_forcing.f90 \ message.f90 microphysics.f90 modules.f90 netcdf.f90 nudging.f90 \ package_parin.f90 palm.f90 parin.f90 plant_canopy_model.f90 poisfft.f90 \ poismg.f90 prandtl_fluxes.f90 pres.f90 print_1d.f90 \ production_e.f90 prognostic_equations.f90 random_function.f90 \ random_gauss.f90 read_3d_binary.f90 read_var_list.f90 run_control.f90 \ set_slicer_attributes_dvrp.f90 singleton.f90 sor.f90 \ subsidence.f90 sum_up_3d_data.f90 \ surface_coupler.f90 swap_timelevel.f90 temperton_fft.f90 \ time_integration.f90 time_to_string.f90 timestep.f90 \ timestep_scheme_steering.f90 transpose.f90 tridia_solver.f90 \ user_3d_data_averaging.f90 \ user_actions.f90 user_additional_routines.f90 \ user_check_data_output.f90 user_check_data_output_pr.f90 \ user_check_parameters.f90 user_data_output_2d.f90 \ user_data_output_3d.f90 user_data_output_dvrp.f90 \ user_data_output_mask.f90 user_define_netcdf_grid.f90 \ user_dvrp_coltab.f90 user_header.f90 user_init.f90 \ user_init_3d_model.f90 user_init_grid.f90 \ user_init_plant_canopy.f90 user_last_actions.f90 user_lpm_advec.f90 \ user_lpm_init.f90 user_lpm_set_attributes.f90 user_module.f90 \ user_parin.f90 user_read_restart_data.f90 \ user_spectra.f90 user_statistics.f90 wall_fluxes.f90 \ write_3d_binary.f90 write_compressed.f90 write_var_list.f90 OBJS=$(SOURCES:.f90=.o) CC = cc CFLAGS = -O F90 = COPT = F90FLAGS = LDFLAGS = #to_be_replaced_by_include .SUFFIXES: .SUFFIXES: .o .f90 all: $(PROG) $(PROG): $(OBJS) $(F90) -o $(PROG) $(OBJS) $(LDFLAGS) clean: rm -f $(PROG) $(OBJS) *.mod *.i *.lst .f90.o: $(F90) $(F90FLAGS) $(COPT) -c $< advec_particles.o: modules.o advec_s_bc.o: modules.o advec_s_pw.o: modules.o advec_s_up.o: modules.o advec_u_pw.o: modules.o advec_u_up.o: modules.o advec_v_pw.o: modules.o advec_v_up.o: modules.o advec_ws.o: modules.o advec_w_pw.o: modules.o advec_w_up.o: modules.o average_3d_data.o: modules.o boundary_conds.o: modules.o buoyancy.o: modules.o calc_liquid_water_content.o: modules.o calc_precipitation.o: modules.o calc_radiation.o: modules.o calc_spectra.o: modules.o fft_xy.o check_for_restart.o: modules.o check_open.o: modules.o check_parameters.o: modules.o subsidence.o close_file.o: modules.o compute_vpt.o: modules.o coriolis.o: modules.o cpu_log.o: modules.o cpu_statistics.o: modules.o cuda_fft_interfaces.o: cuda_fft_interfaces.f90 modules.o data_log.o: modules.o data_output_dvrp.o: modules.o data_output_mask.o: modules.o data_output_profiles.o: modules.o data_output_ptseries.o: modules.o data_output_spectra.o: modules.o data_output_tseries.o: modules.o data_output_2d.o: modules.o data_output_3d.o: modules.o diffusion_e.o: modules.o diffusion_s.o: modules.o diffusion_u.o: modules.o wall_fluxes.o diffusion_v.o: modules.o wall_fluxes.o diffusion_w.o: modules.o wall_fluxes.o diffusivities.o: modules.o disturb_field.o: modules.o random_function.o disturb_heatflux.o: modules.o eqn_state_seawater.o: modules.o exchange_horiz.o: modules.o exchange_horiz_2d.o: modules.o fft_xy.o: cuda_fft_interfaces.o modules.o singleton.o temperton_fft.o flow_statistics.o: modules.o global_min_max.o: modules.o header.o: modules.o subsidence.o impact_of_latent_heat.o: modules.o inflow_turbulence.o: modules.o init_1d_model.o: modules.o init_3d_model.o: modules.o random_function.o advec_ws.o ls_forcing.o init_advec.o: modules.o init_cloud_physics.o: modules.o init_coupling.o: modules.o init_dvrp.o: modules.o init_grid.o: modules.o init_masks.o: modules.o init_ocean.o: modules.o eqn_state_seawater.o init_pegrid.o: modules.o init_pt_anomaly.o: modules.o init_rankine.o: modules.o init_slope.o: modules.o interaction_droplets_ptq.o: modules.o local_getenv.o: modules.o local_stop.o: modules.o local_tremain.o: modules.o local_tremain_ini.o: modules.o lpm.o: modules.o lpm_advec.o: modules.o lpm_boundary_conds.o: modules.o lpm_calc_liquid_water_content.o: modules.o lpm_collision_kernels.o: modules.o user_module.o lpm_data_output_particles.o: modules.o lpm_droplet_collision.o: modules.o lpm_collision_kernels.o lpm_droplet_condensation.o: modules.o lpm_collision_kernels.o lpm_exchange_horiz.o: modules.o lpm_extend_particle_array.o: modules.o lpm_extend_tails.o: modules.o lpm_extend_tail_array.o: modules.o lpm_init.o: modules.o lpm_collision_kernels.o random_function.o lpm_init_sgs_tke.o: modules.o lpm_pack_arrays.o: modules.o lpm_read_restart_file.o: modules.o lpm_release_set.o: modules.o random_function.o lpm_set_attributes.o: modules.o lpm_sort_arrays.o: modules.o lpm_write_exchange_statistics.o: modules.o lpm_write_restart_file.o: modules.o ls_forcing.o: modules.o message.o: modules.o microphysics.o: modules.o modules.o: modules.f90 netcdf.o: modules.o nudging.o: modules.o package_parin.o: modules.o palm.o: modules.o ls_forcing.o nudging.o parin.o: modules.o plant_canopy_model.o: modules.o poisfft.o: modules.o fft_xy.o tridia_solver.o poismg.o: modules.o prandtl_fluxes.o: modules.o pres.o: modules.o poisfft.o print_1d.o: modules.o production_e.o: modules.o wall_fluxes.o prognostic_equations.o: modules.o advec_s_pw.o advec_s_up.o advec_u_pw.o \ advec_u_up.o advec_v_pw.o advec_v_up.o advec_w_pw.o advec_w_up.o \ advec_ws.o buoyancy.o calc_precipitation.o calc_radiation.o coriolis.o \ diffusion_e.o diffusion_s.o diffusion_u.o diffusion_v.o diffusion_w.o \ eqn_state_seawater.o impact_of_latent_heat.o microphysics.o \ nudging.o plant_canopy_model.o production_e.o subsidence.o user_actions.o random_gauss.o: random_function.o read_3d_binary.o: modules.o random_function.o read_var_list.o: modules.o run_control.o: modules.o set_slicer_attributes_dvrp.o: modules.o singleton.o: singleton.f90 sor.o: modules.o subsidence.o: modules.o sum_up_3d_data.o: modules.o surface_coupler.o: modules.o swap_timelevel.o: modules.o temperton_fft.o: modules.o time_integration.o: modules.o advec_ws.o buoyancy.o interaction_droplets_ptq.o \ ls_forcing.o production_e.o prognostic_equations.o user_actions.o timestep.o: modules.o timestep_scheme_steering.o: modules.o transpose.o: modules.o tridia_solver.o: modules.o user_3d_data_averaging.o: modules.o user_module.o user_actions.o: modules.o user_module.o user_additional_routines.o: modules.o user_module.o user_check_data_output.o: modules.o user_module.o user_check_data_output_pr.o: modules.o user_module.o user_check_parameters.o: modules.o user_module.o user_data_output_2d.o: modules.o user_module.o user_data_output_3d.o: modules.o user_module.o user_data_output_mask.o: modules.o user_module.o user_data_output_dvrp.o: modules.o user_module.o user_define_netcdf_grid.o: modules.o user_module.o user_dvrp_coltab.o: modules.o user_module.o user_header.o: modules.o user_module.o user_init.o: modules.o user_module.o user_init_3d_model.o: modules.o user_module.o user_init_grid.o: modules.o user_module.o user_init_plant_canopy.o: modules.o user_module.o user_last_actions.o: modules.o user_module.o user_lpm_advec.o: modules.o user_module.o user_lpm_init.o: modules.o user_module.o user_lpm_set_attributes.o: modules.o user_module.o user_module.o: user_module.f90 user_parin.o: modules.o user_module.o user_read_restart_data.o: modules.o user_module.o user_spectra.o: modules.o user_module.o user_statistics.o: modules.o user_module.o wall_fluxes.o: modules.o write_3d_binary.o: modules.o random_function.o write_compressed.o: modules.o write_var_list.o: modules.o