CitcomS NEWS -- history of user-visible changes. 2014-10-09 Please send CitcomS.py bug reports to cig-mc@geodynamics.org. Version 3.3.0 * Removed Python sections of CitcomS * Wrote Python to standard parameter file conversion tool (Py2C) * Converted Python cookbooks parameter files to original style parameter files * Added output of parameters to a pidXXXXXX style file * Updated the manual to correspond to the new changes Version 3.2.0 * Pyre configuration is now disabled by default. * If Python 2.7 is detected, Pyre is disabled due to conflicts. * Enhanced VTK output, mostly contributed by Rene Gassmoeller at GFZ. * Revised Advection_diffusion routine. Contributed by Thorsten Becker and Shijie Zhong. * Trial implementation of anisotropic viscosity. Contributed by Thorsten Becker. * Added support of multigrid solver in Exchanger. Contributed by Eh Tan. * Added control for inner loop solution accuracy (inner_accuracy_scale). Added option to remove rigid body rotation at each Uzawa iteration step (inner_remove_rigid_rotation). Contributed by Thorsten Becker. * Added two boolean parameters for controlling convergence criterion: check_continuity_convergence and check_pressure_convergence. Contributed by Eh Tan. * Added experimental implementation of internal stress or velocity boundary conditions. Contributed by Thorsten Becker. * Improved handling of grd-read velocity and traction boundary conditions. Contributed by Thorsten Becker. * Changed default parameters for z_410, z_lmantle, z_lith to more Earth-like parameters. Contributed by Thorsten Becker. * Added experimental traction surface BC from grds. Contributed by Thorsten Becker. * Added ability for each radial layer to have distinct viscosity parameters. Contributed by Eh Tan. * Added test implementation of steady state strain-rate weakening via PDEPV psrw=on parameter. Contributed by Thorsten Becker. * Added Murnaghan's integrated linear EoS. Contributed by Eh Tan. * Added augmented Lagrangian component of stiffness matrix in cbf topo. Contributed by Eh Tan. * Performance optimizations for CUDA code. Contributed by Leif Strand. * Fixed several bugs in the code and manual, including: - Fixed a bug in pseudo free surface, reported by Robert Moucha. - Correctly handle orphan tracers. - Added Pyre binding for write_q_files, z_layer, r_grid_layers, rr, nr, others. - Replaced fixed accuracy setting. Bug reported by Rob Moucha. - Fixed temperature perturbation bug for multiple processors. Version 3.1.1 * Added precise_strain_rate function. Contributed by Thorsten Becker. * Added density (rho) scaling in convective heat flux (necessary for compressible flow). Contributed by Dan Bower. * Added parameters 'amending_outflow' and 'exchange_pressure' to help the convergence of esolver. Contributed by Eh Tan. * Added boundary for global mesh in exchanger module. Contributed by Eh Tan. * Refined Cookbooks 9, 10. * Added CUDA-ized e_assemble_del2_u() function, multigrid solver, other functions also parallelized. Enabled using configure option "--with-cuda". Contributed by Leif Strand. * Added blob_bc_persist parameter to allow assigning blob-like temperature anomalies to BCs. Contributed by Thorsten Becker. * Fixed several bugs in the code and manual, including: - Ensure output variables are correctly initialized. - Avoid multiple error messages when using multiple processors. Version 3.1.0 * Converting temperature and composition to seismic velocities. The seismic velocities output can be uploaded to CIG seismic portal for SPECFEM3D simulation to generate synthetic seismograms. See Cookbook 10 in the manual. * Allowing tracers in global model with nproc > 2 by changing the mesh slightly. * The convergence of Stokes solver is controlled by parameter "accuracy" in [CitcomS.solver.vsolver]. "tole_compressibility" is not used anymore. Also, the norms of div(u), u, and p are no longer dependent on the grid size. * Adding self-gravitational effect on geoid, contributed by Shijie Zhong. See Cookbook 8 in the manual. * Adding Consistent-Boundary-Flux (CBF) method to compute dynamic topography, contributed by Shijie Zhong. See Cookbook 8 in the manual. * Better convergence for the nested solver calculation. See Cookbook 9 in the manual. * Adding GMT/netcdf grd input for surface velocity boundary conditions, initial temperature, material dependence and local Rayleigh number in surface layers, contributed by Thorsten Becker. * Adding capability to read in time- and geographic-dependent, top surface temperature boundary conditions, contributed by Mike Gurnis. * Allowing multi-component chemical viscosity. * Optimizing the speed. Cookbook 8 becomes 13% faster than v3.0.3. * Moving input parameter "mantle_temp" from [CitcomS.solver.param] to [CitcomS.solver.ic] section. * visual/project_geoid starts from degree-2 spherical harmonics. * Fixed several bugs in the code and manual. Important bug fix includes: - A memory bug in visual/project_geoid.c, fixed by Thorsten Becker. - Initial temperature "tic_method=0" for regional model applied sinusoidal perturbations to 0th processor only. - Initial temperature "tic_method=1" for regional model generated a top thermal boundary layer 25x older than specfied by "half_space_age". - Compiling with both HDF5 and Exchanger support will crash Cookbook 9 (Issue 528). - Insufficient error checking when reading input files (Issue 265, reported by Clint Conrad). - Installation bug: Python.h and system header not properly checked by configure script (Isse 45, reported by Vlad Manea and Ricardo Arevalo). - Manual fixes: description of rheol=4 (Isse 152, reported by James Robert), energy equation (Issue 162 & 164, reported by Dan Bower), documented all "tic_method" and "rheol" options. Version 3.0.3 * Fixed issue 158: incorrect E->control.fi_max with coor=1. In regional model, when coor=1 is used and nodex is not equal to nodey, the maximum value of phi coordinate is set incorrectly. These parts of the code are affected: - the initial temperature of regional model with tic_method 0 or 2. - the tracer module of regional model. - the lith_age module of regional model. * Fixed a bug in geoid when nprocz>1. The geoid contribution due to topography would contain artitrary result if more than one processor in z direction is used. * Fixed a dead-lock problem in full-regional coupling model. * visual/project_geoid.c: Fixed a typo in memory allocation that led to core dump. Changed the order of input arguments to match the manual. * Closed *.tracer_log.* files before the program exits. More details can be found in CIG Issue Tracker (http://geodynamics.org/roundup/issues/). Version 3.0.2 * Fixed a bug in HDF5 output which causes compilation error (Issue 131); * Fixed a bug in normalizing the tracer coordinate (Issue 139); * Fixed a behavior regression when using lith_age=1 and tic_method=-1; * Greatly reduced the number of tracers per elemente that is required for thermo-chemical convection (Issue 140). More details can be found in CIG Issue Tracker (http://geodynamics.org/roundup/issues/). Version 3.0.1 * A header file for the exchanger was missing in v3.0.0. Version 3.0.0 This release of CitcomS (3.0) contains many new features, including: * two implementations of compressible convection, one by Wei Leng and Shijie Zhong and the other by Eh Tan (Cookbook 8); * the ability to resume computation from previous checkpoints (Cookbook 8); * multi-component chemical convection; * a fixed non-Newtonian solver; * an exchanger package for solver coupling (Cookbook 9); * removing the rigid body rotation component from the velocity by Shijie Zhong (Cookbook 8); * an option to disable monitoring of maximum temperature (Cookbook 9); * a rheology option for pseudo-plasiticity, composition dependent viscosity and heat generation, compressed ASCII output, and an easier way for mesh refinement for the radial coordinate by Thorsten Becker. There are additional seven backward-incompatible changes. Among them, the first four will affect the results. The same input file will produce slightly different results in v3.0.0 than in v2.2.2. * the viscosity field at element level is not smoothed (this might slow down the convergence but will represent the viscosity field more accurately); * the Lenardic filter on temperature is disabled by default; * the rigid body rotation component is removed from the velocity by default; * use of a better pseudo-random number generator to generate the initial tracer; * the type of input parameter coor is changed from a boolean to an integer; * setting restart=on will resume the computation from the checkpoint files and will not need the tracer files (the old way of reading initial temperature from velo files can be achieved by tic_method=-1); * the input parameter reset_initial_composition becomes obsolete. Version 2.2.2 * A bug in geoid calculation is fixed. The buoyancy contribution on geoid was not correctly zeroed before every geoid calculation. This caused the geoid at former timestep accumulated over the later timestep. (Issue 114) * The pressure, stress, and composition output, if enabled, will be combined by "autocombine.py" script as well. The combined output is stored in opt-files, similar to the cap-files. (Issue 99) * Generating random tracers is sped up. This should avoid a potential problem of "too many tries?" error when the domain size of a processor is much smaller (<1%) than the size of the whole sphere. Version 2.2.1 * One example, Cookbook7, was missing in v2.2.0. Version 2.2.0 * A new feature to track particles in the flow (code donated by Allen McNamara and Shijie Zhong). * A new feature to use the tracers to compute composition field and compute thermo-chemical convection (code donated by Allen McNamara and Shijie Zhong). A new cookcook (Cookbook7) in the manual introduces how to use this feature. * New feature to use the tracers to define the low viscosity wedges/channels in the subduction zones (code donated by Vlad Manea). * Fixes of sevearal bugs: issue 72, 73, 75, 77 and 81. See the Geodynamics Roundup issue tracker (http://geodynamics.org/roundup) and the file ChangeLog for details. Important bug fixes include: - 'make install' broken for non-pyred CitcomS. (Issue 72) - 'autocombine.py' did not work in Ubuntu 6.10. (Issue 73) - Velocity b.c not scaled correctly when age becomes negative. When using file_vbcs=on and the age becomes negative (passing the present time), the read-in velocity BC was not scaled properly. Usually the boundary velocity became ~1000x smaller than it should be. (Issue 77) - Errors in the manual. The manual failed to document the unit of the vbc_file is in cm/yr. The manual contained a small error in the description of the header of the coor_file. (Issue 75 and 81) Version 2.1.0 * The filenames of post-processed and combined data are changed slightly. For example, "model.cap0.100" is renamed to "model.cap00.100", "model.cap6.100" is renamed to "model.cap06.100", and "model.cap11.100" is unchanged. * A new input parameter "datadir" specifies the path of output files. The "datafile" input parameter (cannot contain path) specifies the filename prefix of the output files. In v2.0.x and before, "datafile" is used to specify the path and filename prefix of output files. This change is not backward compatible. Users need to change their old input file to run it. * Improved build procedure. The CitComS executable embeds python interpreter by default and is statically linked with MPI library, which improves the portability of the code. * New input format (INI-styled .cfg) * No need to specify launcher.nodes anymore, it is calculated from the mesher properties. * Support of binary format output (using HDF5 library). * Additional data output (including: geoid, stress, pressure, and horizontal average) can be enabled/disabled by changing the input parameters. * Scripts (using GMT commands) to plot 2-D cross sections of temperature field. * Added/removed a few input parameters (all in solver.const component) for computing geoid. Removed "layerd" and "wdensity" and added "radius", "density_above" and "density_below". * Fixes for several bugs: issue 30, 35, 42, 44 and 55. See the Geodynamics Roundup issue tracker (http://geodynamics.org/roundup) and the file ChangeLog for details. Important bug fixes include: - Inconsistent times in C and Pyre. When 'fixed_timestep' is set and the grid resolution is insufficient, the Pyre part of CitComS could give the wrong model time. (Issue 35) - Accidental deletion of surf files by batchsurf.py. batchsurf.py is a script to combine the surf files. If the current working directory happens to be the output directory of CitcomS, the script would delete the original surf files. (Issue 55) Version 2.0.2 * Fixes for several minor bugs: issues 7, 8, 9, 10, 11, 12, and 13. Most of these are installation-related. See the Geodynamics Roundup issue tracker (http://geodynamics.org/roundup) and the file ChangeLog for details. Version 2.0.1 * CitComS.py is now distributed under the GNU General Public License. See the file COPYING for copying conditions. * CitComS.py now uses the GNU Build System (Autoconf, Automake, and Libtool). See the file INSTALL for building and installation instructions. Local variables: version-control: never mode: indented-text end: