Version 92 (modified by suehring, 13 years ago) (diff) |
---|
PALM source code change log
Current revision:
Current fixed release: 3.8 (r716)
The following table documents all changes to the PALM repository since 2009. Older changes can be found here.
Please follow the rules for developers when carrying out source code changes!
Entries in the fifth column specify the type of the change: change of existing code (C), new code (N) or bugfix (B). More detailed information about the changes may sometimes be found in the header comment lines of the respectively changed routines.
Date | Author | svn Revision | Last Release | Type | Description |
---|---|---|---|---|---|
17/08/11 | MS | 3.8 | B | Bugfix in ws-scheme concerning OpenMP paralellization. | |
23/06/11 | RH | 3.8 | B | Bugfix: correction of calculation of vertical grid spacing in NCL script (profiles.ncl). | |
26/05/11 | RH | 3.8 | B | Exchange ghost layers for p regardless of used pressure solver (except SOR) (data_output_2d.f90). | |
20/04/11 | MS | 3.8 | B | Exchange ghost layers also for p_av (data_output_3d.f90). | |
11/04/11 | MS | 3.8 | B | Exchange ghost layers for p regardless of used pressure solver (except SOR) (data_output_3d.f90). | |
11/04/11 | SR | 3.8 | B | Bugfixes for r707 concerning multigrid method for non-cyclic boundary conditions, and general setting of boundary conditions. These changes have also been merged to release 3.8. (init_grid, init_pegrid, modules) | |
06/04/11 | BM | 3.8 | B | Bugfix in mrun for runs with mpt and a large number of processors (< ~1400) | |
06/04/11 | MG | 3.8 | B | Bugfix in pres concerning volume flow control for double cyclic boundary conditions | |
31/03/11 | SR | 3.8 | N | Tagging of release 3.8 | |
30/03/11 | MS | 3.7a | B | Bugfix in vertical advection of w (concerning vector-architecture optimized routine) (advec_ws). | |
C | Formatting adjustments (advec_ws). Reformulate constants as broken numbers (advec_ws, init_3d_model). | ||||
30/03/11 | SR | 3.7a | C | Formatting adjustments. (advec_ws, exchange_horiz, flow_statistics, inflow_turbulence, init_3d_model, init_coupling, init_grid, init_pegrid, prandtl_fluxes, pres, prognostic_equations, surface_coupler) | |
29/03/11 | SR | 3.7a | N | For the multigrid method, on coarse grid levels, gathered data are identically processed on all PEs (before, on PE0 only), so that reversal scattering of data is not necessary any more. This may result in a significant speed-up (>10%) on larger grids. (modules, init_pegrid, poismg) | |
C | Calculation of weighted average of p is now handled in the same way regardless of the number of ghost layers (advection scheme). (pres) multigrid and sor method are using array p_loc for iterative advancements of pressure. Array p_sub is removed. (init_3d_model, modules, poismg, pres, sor) Steering CHARACTER variables bc_lr and bc_ns replaced by internal LOGICAL variables bc_lr_dirrad, bc_lr_raddir, bc_ns_dirrad, bc_ns_raddir for speed optimization. (calc_spectra, check_parameters, exchange_horiz, exchange_horiz_2d, header, init_3d_model, init_grid, init_pegrid, modules, poismg, pres, sor, time_integration, timestep) Variable grid_level is directly used as index for MPI data type arrays. (exchange_horiz, poismg) Initial assignments of zero to array p is done for iterative solvers only. (init_3d_model) | ||||
B | Calculation of localsum modified for proper OpenMP reduction. (pres) Bugfix: bottom (nzb) and top (nzt+1) boundary conditions are now set in routines resid and restrict. These settings were missed before, which may have led to unpredictable results. (poismg) | ||||
25/03/11 | MS | 3.7a | B | Bugfix in declaration of logicals concerning outflow boundaries (advec_ws.f90). | |
24/03/11 | MS | 3.7a | B | Bugfix in exchange of 2d integer arrays (exchange_horiz_2d.f90). | |
C | Use nbgp ghost layers in the example case (user_read_restart_data.f90). | ||||
22/03/11 | MS | 3.7a | B | Bugfix in calculation of vertical velocity skewness. The added absolute value avoid negative values in the root. Negative values of w'w' can occur at the top or bottom of the model domain due to degrading the order of advection scheme. Furthermore the calculation will be the same for all advection schemes (flow_statistics). | |
18/03/11 | SR | 3.7a | N | Adjustments for OpenMP usage on ibmkisti (mrun, subjob). | |
B | work_fftx removed from PRIVATE clauses in routines fftx_tr_xy and tr_yx_fftx (poisfft). Bugfix: Summation of Wicker-Skamarock scheme fluxes and variances for all threads (flow_statistics). | ||||
08/03/11 | SR | 3.7a | N | Adjustments for ibmkisti (batch_scp, mbuild, mrun, subjob). New default configuration files .mrun.config.yonsei2011 and .config_block_for_ibmkisti. | |
B | Bugfix: weighting coefficient added to IBM branch (pres). | ||||
04/03/11 | BM | 3.7a | B | Bugfix for precursor atmosphere/ocean runs (positive time occured in precursor runs, 2D and 3D data output failed on each PE), re-adjustments for lcxt4 (mbuild failed due to compiler conflicts on the lcxt4) | |
20/02/11 | MG | 3.7a | B | Bugfix for some logical expressions (syntax was not compatible with all compilers). | |
09/02/11 | SR | 3.7a | N | Optional exchange of ghost points in synchronous mode via MPI_SENDRCV, steered by new d3par parameter synchronous_exchange. (cpu_statistics, exchange_horiz, modules, parin) openMP-parallelization of pressure solver (fft-method) for 2d-domain-decomposition. (poisfft, transpose) | |
B | mpt bugfix (on ICE machine at HLRN) for netCDF4 usage. (mrun) | ||||
05/02/11 | MG | 3.7a | B | Bugfix for constant_volume_flow = .T. Bugfix for collective_wait = .T. | |
02/02/11 | SR | 3.7a | N | Further adjustments for the Tsubame system plus additional settings for hybrid openMP/MPI usage on the HLRN system. (mrun, mbuild, subjob) | |
B | Bugfix in calculation of divergence of the vertical flux of resolved scale energy, pressure fluctuations, and flux of pressure fluctuation itself. (flow statistics) Bugfix: module pegrid was missing in user-interface routine. (user_statistics) | ||||
19/01/11 | MS | 3.7a | B | Bugfix removed while copying tend to p. (pres) | |
18/01/11 | MS | 3.7a | N | Computation of the perturbation pressure using the corresponding Runge-Kutta coefficients. (pres, init_3d_model, modules) Attention : The modifications on the pressure correction do not affect the velocity components, but due to numerical inaccuracies of the pressure solver there is no guarantee that simulations carried out by previous revisions of PALM are reproducible. | |
C | Allocation of weight_substep moved to init_3d_model. (advec_ws, init_3d_model) Setting LOGICALS for ws-scheme moved to check_parameters. (advec_ws, check_parameters) Consideration of the pressure gradient during time_integration removed. (prognostic_equations, timestep_scheme_steering) | ||||
B | Bugfix in the bc for the horizontal velocity variances. (flow_statistics) | ||||
11/01/11 | RH | 3.7a | B | Access to ddzu(nzt+2) which is not defined (subsidence.f90) | |
23/12/10 | MS / MG | 3.7a | N | Most important changes: New advection scheme added. Different number of processors and different horizontal resolution in ocean and atmosphere is now allowed. Bottom boundary conditions for u and v changed from mirror to dirichlet boundary conditions. Inflow turbulence is now defined by fluctuations around spanwise mean. Advection scheme ( see momentum_advec and scalar_advec ) : New advection scheme added ( Wicker and Skamarock 5th order ). Turbulent fluxes are computed directly inside advection routines, removed from flow_statistics. (advec_ws) Check for illegal combination of ws-scheme and timestep_scheme. Check for topography and ws-scheme. Check for not cyclic boundary conditions in combination with ws-scheme and loop_optimization = 'vector'. Check for call_psolver_at_all_substeps and momentum_advec = 'ws-scheme'. (check_parameters) When advection is computed with ws-scheme, turbulent fluxes are already computed in the respective advection routines and buffered in arrays sums_xxxx_ws_l(). This is due to a consistent treatment of statistics with the numerics and to avoid unphysical kinks near the surface. Furthermore the computation of z_i is only done if the heat flux exceeds a minimum value. This affects only simulations of a neutral boundary layer and is due to reasons of computations in the advection scheme. (flow_statistics) Definition of new array bounds nxlg, nxrg, nylg, nyng on each PE. Furthermore the allocation of arrays and steering of loops is done with these parameters. (init_grid) Call ws_init to initialize arrays needed for statistical evaluation and optimization when ws-scheme is used. (init_3d_model) Module advec_ws added. (Makefile) Buffer arrays for the left sided advective fluxes added in arrays_3d. +flux_s_u, +flux_s_v, +flux_s_w, +diss_s_u, +diss_s_v, +diss_s_w, +flux_s_pt, +diss_s_pt, +flux_s_e, +diss_s_e, +flux_s_q, +diss_s_q, +flux_s_sa, +diss_s_sa. +exchange_mg added in control_parameters to steer the data exchange. Parameters +nbgp, +nxlg, +nxrg, +nysg, +nyng added in indices. flag array +boundary_flags added in indices to steer the degradation of order of the advective fluxes when non-cyclic boundaries are used. MPI-datatypes +type_y, +type_y_int and +type_yz for data_exchange added in pegrid. +sums_wsus_ws_l, +sums_wsvs_ws_l, +sums_us2_ws_l, +sums_vs2_ws_l, +sums_ws2_ws_l, +sums_wspts_ws_l, +sums_wssas_ws_l, +sums_wsqs_ws_l and +weight_substep added in statistics to steer the statistical evaluation of turbulent fluxes in the advection routines. LOGICALS +ws_scheme_sca and +ws_scheme_mom added to get a better performance in prognostic_equations. (modules) New allocation of tend when ws-scheme and multigrid is used. This is due to reasons of performance of the data_exchange. The same is done with p after poismg is called. (pres) Calls of the advection routines with WS5 added. Calls of ws_statistics added to set the statistical arrays to zero after each time step. (prognostic_equations) Coupling: Different processor/grid topology in atmosphere and ocean is now allowed! (check_parameters) Moved determination of target_id's from init_coupling. Exchange of parameters between ocean and atmosphere via PE0 Determination of parameters needed for coupling (coupling_topology, ngp_a, ngp_o) with different grid/processor-topology in ocean and atmosphere. (init_pegrid) Removed u_nzb_p1_for_vfc and v_nzb_p1_for_vfc For coupling with different resolution in ocean and atmosphere: +nx_a, +nx_o, +ny_a, +ny_o, +ngp_a, +ngp_o, +total_2d_o, +total_2d_a, +coupling_topology (modules) Additional case for nonequivalent processor and grid topology in ocean and atmosphere added (coupling_topology = 1). Added exchange of u and v from Ocean to Atmosphere. (surface_coupler) Bottom BC: Removed mirror boundary conditions for u and v at the bottom in case of ibc_uv_b == 0. Instead, dirichlet boundary conditions (u=v=0) are set in init_3d_model. (boundary_conds) dzu_mg has to be set explicitly for a equally spaced grid near bottom. ddzu_pres added to use a equally spaced grid near bottom. In case of dirichlet boundary condition at the bottom zu(0)=0.0. (init_grid) Call of SOR routine is referenced with ddzu_pres. (pres) Turbulent inflow: Using nbgp recycling planes for a better resolution of the turbulent flow near the inflow. (inflow_turbulence) | |
C | Advection scheme: The maximum_grid_level changed from 1 to 0. 0 is the normal grid, 1 to maximum_grid_level the grids for multigrid, in which 0 and 1 are normal grids. This distinction is due to reasons of data exchange and performance for the normal grid and grids in poismg. Adaption of ngp_xy, ngp_y to a dynamic number of ghost points. The definition of MPI-Vectors adapted to a dynamic number of ghost points. New MPI-Vectors for data exchange between left and right boundaries added. This is due to reasons of performance (10% faster). (init_pegrid) Dynamic exchange of ghost points with nbgp_local to ensure that no useless ghost points exchanged in case of multigrid. type_yz(0) and type_xz(0) used for normal grid, the remaining types used for the several grid levels. Exchange is done via MPI-Vectors with a dynamic value of ghost points which depend on the advection scheme. Exchange of left and right PEs is 10% faster with MPI-Vectors than without. (exchange_horiz) Dynamic exchange of ghost points. (exchange_horiz_2d) Calls of exchange_horiz modified. (advec_particles, data_output_2d, data_output_3d, data_output_mask, diffusivities, init_3d_model, init_pt_anomaly, init_rankine, poismg, sor, time_integration) Default of momentum_advec and scalar_advec changed to 'ws-scheme'. (modules) nxl-1, nxr+1, nys-1, nyn+1 replaced by nxlg, nxrg, nysg, nyng (advec_particles, asselin_filter.f90, average_3d_data.f90, boundary_conds.f90, calc_liquid_water_content.f90, calc_spectra, data_output_2d, data_output_3d, diffusion_e.f90, diffusion_u.f90, diffusion_v.f90, diffusion_w.f90, diffusivities, init_3d_model, init_rankine, init_slope, prandtl_fluxes, pres, production_e, sor, subsidence, sum_up_3d_data, surface_coupler, timestep, user_..., wall_fluxes) Allocation of arrays, output of array bounds and skip values adapted to a dynamic number of ghost points with nbgp. (check_open, data_output_3d, global_min_max, read_3d_binary, user_read_restart_data, write_compressed) Coupling: determination of target_id's moved to init_pegrid. (init_coupling) Changed surface boundary conditions for u and v in case of ibc_uv_b == 0 from mirror bc to dirichlet boundary conditions (u=v=0), so that k=nzb is representative for the height z0. (init_3d_model) Bottom BC: Changed surface boundary conditions for u and v from mirror bc to dirichelt bc, therefore u(uzb,:,:) and v(nzb,:,:) is now representative for the height z0. (prandtl_fluxes) Other: Initial volume flow is now calculated by using the variable hom_sum. Therefore the correction of initial volume flow for non-flat topography removed (removed u_nzb_p1_for_vfc and v_nzb_p1_for_vfc) (init_3d_model) | ||||
B | Bugfix in checking for conserve_volume_flow_mode. (check_parameters) Changed length of string run_description_header. (modules) Bugfix: After pressure correction no volume flow correction in case of non-cyclic boundary conditions (has to be done only before pressure correction). (pres) Bug removed in declaration of ddzw(), nz replaced by nzt+1. (sor) | ||||
15/12/10 | SR | 3.7a | C | A 2d domain decomposition is now used by default on "lctit". (init_pegrid) | |
B | Bugfix: missing define statements for netCDF calls added. (data_output_3d) | ||||
14/12/10 | SR | 3.7a | C | Adjustments for new Tsubame system (lctit) at Tokyo Institute of Technology. (mbuild, mrun, subjob) | |
13/12/10 | BM | 3.7a | B | Converted "1" to 64bit in the MAX function (init_3d_model, needed on ibm machines) | |
10/12/10 | MS | 3.7a | B | idum replaced by cdum. (read_var_list) | |
10/12/10 | RH | 3.7a | C | Calculation of q*2 added. (flow_statistics, profiles.ncl). | |
10/12/10 | SR | 3.7a | N | Optional barriers included in order to speed up collective operations MPI_ALLTOALL and MPI_ALLREDUCE. This feature is controlled with new initial parameter collective_wait. Default is .FALSE, but .TRUE. on SGI-type systems. (advec_particles, advec_s_bc, buoyancy, check_for_restart, cpu_statistics, data_output_2d, data_output_ptseries, flow_statistics, global_min_max, inflow_turbulence, init_3d_model, init_particles, init_pegrid, init_slope, parin, pres, poismg, set_particle_attributes, timestep, read_var_list, user_statistics, write_compressed, write_var_list) Adjustments for Kyushu Univ. (lcrte, ibmku). Concerning hybrid (MPI/openMP) runs, the number of openMP threads per MPI tasks can now be given as an argument to mrun-option -O. (mbuild, mrun, subjob) | |
C | Initialization of the module command changed for SGI-ICE/lcsgi. (mbuild, subjob) | ||||
24/11/10 | SR | 3.7a | C | Parameters moved from the d3par-NAMELIST (runtime parameters) to the inipar-NAMELIST (initial parameters): call_psolver_at_all_substeps, cfl_factor, cycle_mg, mg_cycles, mg_switch_to_pe0_level, ngsrb, nsor, omega_sor, prandtl_number, psolver, rayleigh_damping_factor, rayleigh_damping_height, residual_limit (parin, read_var_list, write_var_list). Attention: This shift of parameters requires the users to modify all those NAMELIST-parameter files, which contain the parameters given above! Due to this change, in routine skip_var_list (end of file read_var_list.f90), variable ldum is replaced by cdum(LEN=1), because otherwise read errors (too few data on file) would appear due to one of the additional parameters (cycle_mg, which is a string of one single character) which are now stored on the restart file. Weblink to error message database changed to new trac server (message). | |
B | Bugfix concerning check of xz/yz-cross-section levels on netcdf-files to be extended (netcdf). Bugfix in opening of cross section netcdf-files (parallel opening with netcdf4 only works for netcdf_data_format > 2 but was used generally) (check_open). Default values of surface_scalarflux and surface_waterflux changed from 0.0 to 9999999.9. Giving the parameter the default values means, that the respective surface fluxes are calculated by the MO-relations, so the old default value did not allow to set the surface fluxes to zero explicitly. (check_parameters, modules) | ||||
12/11/10 | CH | 3.7a | C | Calculation of z locations for masked output changed (init_masks). | |
01/11/10 | RH | 3.7a | B | Bugfix: enable plot of profiles when data is of kind double in case of no_files > 1 (profiles.ncl) | |
29/10/10 | RH | 3.7a | B | Bugfix: enable plot of combined profiles when data is of kind double (profiles.ncl) | |
28/10/10 | CH | 3.7a | C | Remove unnecessary print command (read_var_list). | |
27/10/10 | RH | 3.7a | B | Character string of subs_vertical_gradient and subs_vertical_gradient_level shortened to 30 characters (write_var_list). | |
27/10/10 | CH | 3.7a | C | Added time_domask to write_var_list and read_var_list to change wrong output times for masked data in restart runs (read_var_list, write_var_list). | |
15/10/10 | BM | 3.7a | N | Added the ksh script img2video, a post-processing tool for generating animations from image data (e.g. dvrp, ncl, vapor...). Find the manual here. | |
14/10/10 | RH | 3.7a | B | Enable plot of data if it is of kind double instead of kind float in cases where netcdf_precision is set to '<out>_NF90_REAL8', i. e. the data has double precision (cross_sections.ncl, profiles.ncl, spectra.ncl, timeseries.ncl). | |
11/10/10 | RH | 3.7a | B | replace of 'user_spectra' with 'user_read_restart_data' in call of message | |
06/10/10 | RH | 3.7a | C | !UserGuide_for_NCL_scripts deleted because documentation is now available online. (!UserGuide_for_NCLscripts.odt,!UserGuide_for_NCLscripts.pdf) | |
05/10/10 | RH | 3.7a | C | Renaming of ws_vertical_gradient to subs_vertical_gradient, ws_vertical_gradient_level to subs_vertical_gradient_level and ws_vertical_gradient_level_ind to subs_vertical_gradient_level_i (check_parameters, header, modules, parin, read_var_list, subsidence, write_var_list) | |
01/10/10 | CH | 3.7a | C | calculating masks expanded for user-defined quantities (check_parameters) | |
30/09/10 | RH | 3.7a | C |
Formatting of NCL scripts adjusted (cross_sections.ncl, profiles.ncl, spectra.ncl, timeseries.ncl) | |
B | Vector plot is now possible if var is unequal to "all" (cross_sections.ncl) | ||||
30/09/10 | CH | 3.7a | C | amount of defining masks changed from 20 to unlimited (check_open, check_parameters, close_file, data_output_mask, init_masks, modules, netcdf) palm and netcdf message identifiers for masked output changed (check_open, check_parameters, close_file, data_output_mask, init_masks, netcdf) | |
13/09/10 | SR | 3.7a | N/B | new: setting of MPI_TYPE_DEPTH for netCDF4/HDF5 with mpt-library (mrun) bugfixes for wrong netCDF/3.6.3 module and r561 (mbuild, mrun) | |
09/09/10 | CH | 3.7a | B | Bugfix in calculation of ngp_3d for 64 bit. So far ngp_3d has not been 64 bit. | |
07/09/10 | CH | 3.7a | B | Bugfix for message string in if statement (dz_stretch_level) of subroutine set_mask_locations. The change concerns the masked data output, which is still not documented. | |
07/09/10 | SR | 3.7a | C | Documentation for surface_heatflux in case of prandtl_layer = .F. improved. bugfix for wrong netCDF/3.6.3 module on lcsgi (mbuild, mrun) | |
B | Bugfix in if statement (disturb_heatflux) Bugfix: in 2201 statement: closing " was missing (interpret_config) Bugfix: default setting of nzb_local for flat topography (init_grid) Bugfix: wrong dimension used for ts_value_l (user_statistics) | ||||
01/09/10 | CH | 3.7a | C | d3dpar-parameters for masked output data_output_mask_*, data_output_mask_user_*, mask_*_x, mask_*_y, mask_*_z, mask_*_x_loop, mask_*_y_loop and mask_*_z_loop have been replaced by corresponding (array-) parameters data_output_masks, data_output_masks_user, mask_x, mask_y, mask_z, mask_x_loop, mask_y_loop, and mask_z_loop. inipar-parameter masks has been removed. The changes concern the masked data output, which is still not documented. | |
17/08/10 | BM | 3.7a | N/C/B | new: .mrun.config.lcxt4 for Cray-XT4 in Bergen/Norway changes: adjustments for lcxt4 bugfix: loading of user-defined modules (mbuild) | |
15/06/10 | RH | 3.7a | C | ssh from compute nodes to login nodes on hosts lcsgih/lcsgib is done using the names hicegate0/bicegate0 instead of the IP addresses | |
21/04/10 | RH | 3.7a | C | Large scale vertical motion (subsidence/ascent) can be added as additional source to the prognostic equation for humidity/passive scalar. Character length for dopr_unit enlarged. Adjustment of the NCL scripts to allow for output of png files. | |
B | Bugfix: unit of hyp changed to dbar (check_parameters) | ||||
01/04/10 | RH | 3.7a | B | Bugfix: treatment of special character * in NCL variables containing lists corrected | |
31/03/10 | RH | 3.7a | C | List of variable names have to be specified using blank separated lists and single quotes | |
30/03/10 | RH | 3.7a | C | Adjustment of the NCL scripts and palmplot to allow for special characters in netCDF variable names. | |
30/03/10 | SR | 3.7a | B | Bugfix: "/" in netcdf profile variable names replaced by ":" | |
19/03/10 | SR | 3.7a | N | netCDF4 support for particle data. Total number of particles is allowed to increase during the run, when netcdf_data_format > 2 is used. | |
C | Special characters like * and " are now allowed for netCDF variable names. Replacement of these characters has been removed (routine clean_netcdf_varname removed) | ||||
18/03/10 | SR | 3.7a | N | Simple installation method has been documented (see doc/install). Respective scripts and configuration files have been updated. | |
B | opt=1 is forced for PGI-compiler in routine buoyancy by compiler-directive. Otherwise, program aborts with SIGFPE. | ||||
16/03/10 | RH | 3.7a | N | NCL scripts can be run with the shell script palmplot. | |
12/03/10 | SR | 3.7a | B | bugfix for r504: remode_md was given a wrong value | |
08/03/10 | SR | 3.7a | C | hack for better usage of mrun on Kyoto computing center machine (lckyoto) | |
03/03/10 | SR | 3.7a | C | combine_plot_fields is now directly called within mrun and must not be given by an output command in the configuration file any more. Please remove the respective output command (OC:combine_plot_fields.x) from your configuration file! Utility programs (combine_plot_fields, interpret_config) are created by mbuild separately for each block in the configuration file. Depending on option -K, mrun is using the utility programs for the respective block. Utility programs are also compiled in parallel, depending on variable %mopts in the configuration file.. Default configuration files updated. | |
02/03/10 | SR | 3.7a | C | Particle data for restart runs are only written if environment variable write_binary = .T., i.e. particle data are now handled in the same way as the other restart data. (palm) | |
01/03/10 | SR | 3.7a | N | Output in netCDF4-format. netCDF4 allows for parallel I/O. Also, variables are not limited in size any more (i.e. arrays can be larger than 2GB). The new d3par-parameter netcdf_data_format can be used to select among the different netCDF file formats (1: classic format, 2: 64-bit-offset format (this is now the default), 3: netCDF4/HDF5 format, 4: netCDF4 format with NF90_CLASSIC_MODEL bit set). Setting netcdf_data_format > 2 only affects 2d- and 3d-output, i.e. there is no parallel output for profiles, time series, spectra, and particles. Parallel output of particle data may be realized in the future. In case of parallel output, all PEs write into one file, which means that postprocessing the data with combine_plot_fields (merging data from single files - one per PE - into one file) is not neccessary. In this case, flag files are automatically set, telling combine_plot_fields that nothing is to be done. Using netCDF4 format requires a netCDF4/HDF5 library. Respective settings for -I, -L, and -l compiler/loader options for the SGI-ICE at HLRN can be found in the new example configuration file .mrun.config.imuk_ice2_netcdf4 Attention: So far, netCDF parallel I/O has only been tested a little. Further performance optimizations may be required, especially in case of large data sets (e.g. data chunking, or lustre file system settings with lfs setstripe). Please report bugs and performance problems immediately! combine_plot_fields outputs cpu-time needed for file merging. Modules to be loaded for compilation (mbuild) or job execution (mrun) can/should now be given in the configuration file (.mrun.config) using variable %modules. Example: %modules ifort/11.0.069:netcdf lcsgih parallel This method replaces the (undocumented) %mpilib-variable. WARNING: All fixed settings of modules in the scripts mbuild, mrun, and subjob have been removed! Please set the %modules variable appropriately and remove the %mpilib variable in your configuration file. Compilation time can be reduced be using parallel make. The number of allowed simultaneous compiler calls (threads) is set in the configuration file using variable %mopt, e.g. %mopts -j:4 lcsgih parallel allows a maximum of 4 routines to be compiled simultaneously (provided that the makefile does not show any dependencies between these routines). | |
C | d3par-parameters netcdf_64bit and netcdf_64bit_3d have been removed. Use the new d3par-variable netcdf_data_format = 2 for choosing the netCDF 64bit-offset format (this is the default from now on). The offset-format can not be set independently for the 3d-output-data any more. d3par-parameters netcdf_format_mask, netcdf_format_mask_av, and variables nc_format_mask, format_parallel_io removed. They are replaced by the new parameter netcdf_data_format. This change concerns the masked data output, which is still not documented. | ||||
B | Bugfix in Makefile: forgot to compile for interpret_config. Bugfix: timeseries data have to be collected by PE0 (user_statistics). | ||||
05/02/10 | SR | 3.7a | C | Actual revisions: renamed Current revisions: in most of the source code file headers. | |
B | ngp_3d, ngp_3d_inner changed to 64 bit. Otherwise, on large grids > 2*109 grid points some global statistics (e.g. total kinetic energy) have wrong values. | ||||
05/02/10 | SR | 3.7a | N | compare_palm_logs is additionally compiled with mbuild -u . (Makefile) make options (%mopts) to be set by configuration file implemented. (mrun, mbuild) humidity = .T. can be used for runs with topography. wall_humidityflux and wall_scalarflux are the corresponding new inipar parameters. (check_parameters, init_3d_model, parin) Large scale vertical motion (subsidence/ascent) can be added as additional source to the prognostic equation for potential temperature. See new parameters large_scale_subsidence, ws_vertical_gradient, and ws_vertical_gradient_level. (check_parameters, header, Makefile, modules, parin, prognostic_equations, read_var_list, subsidence, write_var_list) Scripts have been updated for Cray-XT5 machine (lcxt5m) and Hitachi-machine (lckyoto). A simple method for installing and running palm (with limited features) has been added. (Makefile, new scripts palm_simple_install, palm_simple_run) Masked data output has been implemented but it is not documented in the user manual so far. This feature can already use netCDF4 file format. (check_open, check_parameters, close_file, modules, netcdf, parin, time_integration, user_parin, new: data_output_mask, init_masks, user_data_output_mask) | |
C | 2d-decomposition is default for Cray-XT machines. (init_pegrid) var_ts is replaced by dots_max. (modules, init_3d_model) Every cloud droplet has now an own weighting factor and can be deleted due to collisions. Condensation and collision of cloud droplets are adjusted accordingly. (advec_particles) Collision efficiency for large cloud droplets has changed according to table of Rogers and Yau. (collision_efficiency) | ||||
B | Bugfix for generating serial jobs. (subjob) Bugfix: index problem concerning gradient_level indices removed. (header) Dimension of array stat in cascade change to prevent type problems with mpi2 libraries. (poisfft_hybrid) Loop was split to make runs reproducible when using ifort compiler. (disturb_field) Bugfix: exchange of ghost points for prho included. (time_integration) Bugfix in calculation of time-averaged surface heatfluxes. (sum_up_3d_data) Bugfix in calculation of precipitation_rate. (calc_precipitation) Bugfix: initial data assignments to some dvrp arrays changed due to error messages from gfortran compiler. (modules) Bugfix in calculation of cloud droplet velocity. (advec_particles) Bugfix in transfer of particles at south/left edge. (advec_particles) Bugfix in calculation of collision efficiency. (collision_efficiency) | ||||
23/09/09 | SR | 3.7 | N | Most important changes: atmosphere-ocean coupling has been improved and steering of dvr-software is more user-friendly now. Beside that, the release contains a lot of optimizations, changes, and bugfixes which have accumulated over the last months. The atmosphere-ocean coupling allows to use independent precursor runs in order to account for different spin-up times. The time when coupling has to be started is given by new inipar parameter coupling_start_time. The precursor ocean run has to be started using new mrun option "-y" in order to add the appendix "_O" to all output files. (check_for_restart, check_parameters, data_output_2d, data_output_3d, data_output_profiles, data_output_ptseries, data_output_spectra, data_output_tseries, header, init_coupling, modules, mrun, parin, read_var_list, surface_coupler, time_integration, write_var_list) Clipping of dvrp output implemented. Default colourtable for particles implemented, particle attributes (color, dvrp_size) can be set with new parameters particle_color, particle_dvrpsize, color_interval, dvrpsize_interval. Slicer attributes (dvrp) are set with new routine set_slicer_attributes_dvrp and are controlled with existing parameter slicer_range_limits. (init_dvrp, data_output_dvrp, modules, set_slicer_attributes_dvrp, user_data_output_dvrp) Polygon reduction for topography and ground plate isosurface. Reduction level for buildings can be chosen with parameter cluster_size. (init_dvrp) Variables bc_lr and bc_ns in most subroutines replaced by LOGICAL variables bc_lr_cyc and bc_ns_cyc for speed optimization. This gives a significant speedup of more than 10%. (check_parameters, diffusion_u, diffusion_v, diffusion_w, modules) Scripts have been adapted for machine lck (Yonsei Univ.). (mrun, mbuild, subjob) Additional timestep criterion in case of simulations with plant canopy. (timestep) Check for illegal entries in section_xy|xz|yz that exceed nz+1|ny+1|nx+1. (check_parameters) External pressure gradient can be used as driving force. (check_parameters, header, init_3d_model, modules, parin, prognostic_equations, read_var_list, write_var_list) New topography case 'single_street_canyon' . (header, init_grid, modules, parin, read_var_list, user_check_parameters, user_header, user_init_grid, write_var_list) Option to predefine a target bulk velocity for conserve_volume_flow. (check_parameters, header, init_3d_model, modules, parin, read_var_list, write_var_list) Option for user defined 2D data output in xy cross sections at z=nzb+1. (data_output_2d, user_data_output_2d) xy cross section output of surface heatfluxes (sensible and latent). (average_3d_data, check_parameters, data_output_2d, modules, read_3d_binary, sum_up_3d_data, write_3d_binary) | |
C | Output of messages replaced by message handling routine. (advec_particles, advec_s_bc, buoyancy, calc_spectra, check_for_restart, check_open, coriolis, cpu_log, data_output_2d, data_output_3d, data_output_dvrp, data_output_profiles, data_output_spectra, fft_xy, flow_statistics, header, init_1d_model, init_3d_model, init_dvrp, init_grid, init_particles, init_pegrid, netcdf, parin, plant_canopy_model, poisfft_hybrid, poismg, read_3d_binary, read_var_list, surface_coupler, temperton_fft, timestep, user_actions, user_data_output_dvrp, user_dvrp_coltab, user_init_grid, user_init_plant_canopy, user_parin, user_read_restart_data, user_spectra) Output of netCDF messages with aid of message handling routine. (check_open, close_file, data_output_2d, data_output_3d, data_output_profiles, data_output_ptseries, data_output_spectra, data_output_tseries, netcdf) __lcmuk changed to __lc to avoid problems with Intel compiler on sgi-ice. (poisfft) For extended netCDF files, the updated title attribute includes an update of time_average_text where appropriate. (netcdf) In case of restart runs without extension, initial profiles are not written to netCDF-file anymore. So far, time axis always started at t=0. (data_output_profiles, modules, read_var_list, write_var_list) initializing_actions= 'read_data_for_recycling' renamed to 'cyclic_fill' . A cyclic fill can now be used independent of turbulent_inflow. (check_parameters, header, init_3d_model) Two netCDF error numbers changed. (data_output_3d) A link to the webspage appendix_a.html is printed for further information about possible reasons of the error that appeared. (message) Temperature gradient criterion for estimating the boundary layer height replaced by the gradient criterion of Sullivan et al. (1998). (flow_statistics) netCDF unit attribute in timeseries output in case of statistic regions added. (netcdf) Maximum number of tails is calculated from maximum number of particles and skip_particles_for_tail. (init_particles) Value of vertical_particle_advection is allowed to differ for each particle group. (advec_particles, header, modules) First constant in array den also defined as type double. (eqn_state_seawater) Parameter dvrp_psize moved from particles_par to dvrp_graphics_par. (package_parin) topography_grid_convention moved from userpar to inipar (check_parameters, header, parin, read_var_list, user_check_parameters, user_header, user_init_grid, user_parin, write_var_list) Default value of grid_matching changed to 'strict' . (modules) Adjustments for runs on lcxt4 (necessary due to a software update on CRAY) and for coupled runs on ibmy. (mrun, subjob) | ||||
B | Bugfix: Initial hydrostatic pressure profile in case of ocean runs is now calculated in 5 iteration steps. (init_ocean) Bugfix: wrong sign in buoyancy production of ocean part in case of not using the reference density (only in 3D routine production_e). (production_e) Bugfix: output of averaged 2d/3d quantities requires that an avaraging interval has been set, respective error message is included. (check_parameters) Bugfix: Output on unit 14 only if requested by write_binary. (user_last_actions) Bugfix to avoid zero division by km_neutral. (production_e) Bugfix for extended netCDF files: In order to avoid 'data mode' errors if updated attributes are larger than their original size, NF90_PUT_ATT is called in 'define mode' enclosed by NF90_REDEF and NF90_ENDDEF calls. This implies a possible performance loss; an alternative strategy would be to ensure equal attribute size in a job chain. (netcdf) Bugfix: correction of initial volume flow for non-flat topography. (init_3d_model) Bugfix: zero initialization of arrays within buildings for 'cyclic_fill' . (init_3d_model) Bugfix: to_be_resorted => s_av for time-averaged scalars. (data_output_2d, data_output_3d) Bugfix: avoid that ngp_2dh_s_inner becomes zero. (init_3_model) Typographical error: unit of wpt in dots_unit. (modules) Bugfix: error in check, if particles moved further than one subdomain length. This check must not be applied for newly released particles. (advec_particles) Bugfix: several tail counters are initialized, particle_tail_coordinates is only written to file if its third index is > 0, arrays for tails are allocated with a minimum size of 10 tails if there is no tail initially. (advec_particles, init_particles) Bugfix: pressure included for profile output. (check_parameters) Bugfix: Type of count and count_rate changed to default INTEGER on NEC machines. (cpu_log) Bugfix: output of particle time series only if particle advection is switched on. (time_integration) Bugfix: qsws was calculated in case of constant heatflux = .FALSE.. (prandtl_fluxes) Bugfix: averaging along z is not allowed for 2d quantities (e.g. u* and z0). (data_output_2d) Typographical errors. (netcdf) If the inversion height calculated by the prerun is zero, inflow_damping_height must be explicitly specified. (init_3d_model) Small bugfix concerning 3d-64bit-netCDF output format. (header) Bugfix: dt_fixed removed from the restart file, because otherwise, no change from a fixed to a variable timestep would be possible in restart runs. (read_var_list, write_var_list) Bugfix: initial setting of time_coupling in coupled restart runs. (time_integration) | ||||
02/02/09 | SR | 3.6 | N | This release contains further additions, changes, and bugfixes for the SGI-ICE system, as well as important changes like the splitting of the user-interface into single files, a complete revision of the pre-compiling mechanism allowing to use different make-depositories simultaneously, and a revision of the reading-mechanism from restart files, which has no more restrictions in case that the previous and current run have different domain/subdomain sizes. A new handling of all kind of output messages is introduced with this release and will be applied to all existing messages within the next releases. New features are: Restart runs on SGI-ICE are working. (mrun) 2d-decomposition is default on SGI-ICE systems. (init_pegrid) Ocean-atmosphere coupling realized with MPI-1. mrun adjusted for this case (-Y option). Check that PALM is called with mrun-option "-K parallel" for coupling. Adjustments in mrun, mbuild, and subjob for lcxt4. DVRP arguments changed to single precision, mode pathlines added. User can add additional routines in files user_additional_routines. User can check user parameters and deduce further quantities in user_check_parameters. | |
C | User interface has been split into single files. Type of variables count and count_rate changed to INTEGER(8) in order to avoid "out of range" problems, which result in measured negative time intervals. (cpu_log, local_tremain, local_tremain_ini) Reading mechanism from restart files completely revised. The subdomain/total domain size is now allowed to vary arbitrarily between the current and previous run. (read_var_list, read_3d_binary, user_read_restart_data) Precompilation mechanism (mbuild) completely revised: the source-tarfile remains in the source directory (trunk/SOURCE). One depository per block (given in the config-file) is created. Always all files from the source directory are copied to the respective depository. No additional file checks are done any more (mrun version 2.1). The depository name used contains the conditions given by mrun-option "-K". (mbuild, mrun) Output messages (including required stop of execution) can now be handled with the new subroutine message. All output messages will be replaced by this routine step by step within the next revisions. Neumann boundary condition at k=nzb is explicitly set for better reading, although this has been already done in boundary_conds. (advec_s_bc) Origin of the xy-coordinate system shifted from the center of the first grid cell (indices i=0, j=0) to the south-left corner of this cell. (netcdf) Topography definition according to new user parameter topography_grid_convention. (init_grid, modules, user_header, user_init_grid, user_parin) | ||||
B | Bugfix: array d is reallocated in case that multigrid is used. (calc_spectra) Bugfixes for nonparallel execution. (check_for_restart, cpu_statistics, inflow_turbulence, timestep) Size of pf3d adjusted to the required output size (1 gridpoint less, along all three dimensions), because output of a subset of the data (pf3d(nxa:nxe...)) in the NF90_PUT_VAR statement caused segmentation fault with the INTEL compiler. (combine_plot_fields) Bugfix: error in zu index in case of section_xy=-1. (header) Inconsistency removed: as the thermal stratification is not taken into account for the evaluation of the wall fluxes at vertical walls, the eddy viscosity km must not be used for the evaluation of the velocity gradients dudy, dwdy, dvdx and dwdx. (production_e) Bugfix in calculating k index in case of oceans runs. (sort_particles) Bugfix: no output of particle concentration and radius unless particles have been started. (data_output_2d) Bugfix: reading of spectrum_x|y from restart files ignored if total numbers of grid points do not match. (read_3d_binary) Bugfix: abort in case that absolute temperature is below zero. (init_cloud_physics) | ||||