CTH is undergoing continual development at Sandia, but a new release version is distributed externally about once every year. New or upgrade requests during our development cycle will receive the current distribution code, not the most current internal version. Our current external release of CTH is Version 10.2 for government users and 9.1 for academic and commercial users.
Version 10.2 (February, 2012)
- Increased number of materials to 98.
- Material sound speed added as option to database (for gen-less calculations only).
- Discard can be based on material sound speed.
- Improved diagnostics (e.g. DTMIN reports).
- New Material Models
- Kayenta.
- Mulliken-Boyce.
- Mie-Grüneisen-Guggenheim-Barnes (MGGB) EOS.
- Tillotson EOS with cavitation.
- Volume fraction discard now only occurs for "isolated" volume fractions.
- Multiple spheres DIATOM shape option (useful in mesoscale simulations).
- SPTime command (combination of SaveTime and PlotTime) added to Spymaster.
- Parallel read of exodus files added to solution import capability.
- AMR indicator MAXL can use negative integer (e.g. maxl -2) to refer to "two levels below maximum refinement level".
- DIATOM bug fix when using graded extra variables.
- Bug fix for benign treatment of ANEOS warning messages.
- Fixed handling of cell temperature during AMR refinement/unrefinement and at AMR block boundaries.
- Improvements to HELLO command operation and other bug fixes for Windows executables.
- Spymaster bug fixes and many new features (see Spymaster manual). Some highlights:
- Rotated 2-D plots (see RotateZ command).
- New default material colors and improvements to DrawMatLegend command.
- New MatVisible command to make it easier to turn on material plotting.
- Ability to use Greek characters and symbols from the default font table.
- Added default italics and bold fonts.
- Larger default image size (1024x768).
- XBMirror defaults to ON for 2DC plots.
- New ImageS, ImageUS, ImageNS, ImageMS commands for creating images named by time rather than cycle.
- Added Paint3DMats, Paint2DMat, Paint2DMats commands.
Usage notes for Versions 10.0, 10.1 and 10.2:
In the EPDATA section, you will need to use new syntax for elastic-perfectly-plastic (Von Mises) and GEO yield properties:
matep1 eppvm user yield=… poisson=…
matep2 geo user yzero=… dydp=… yield=… poisson=…
instead of the old syntax:
matep1 yield=… poisson=…
matep2 geo yzero=… dydp=… yield=… poisson=…
And, as always, it is a good idea to pay attention to the FIRST error message you may get from CTH, especially when it is due to a syntax problem. Subsequent error messages are often not as useful for debugging your input.
Version History
CTH is influenced greatly by its predecessor codes, CHARTD, a one-dimensional hydrocode written by Sam Thompson in 1972 and CSQ, written by Sam in 1975. Development on CTH started in the late 1980's and continues to the present day. CTH was modified to run on massively parallel computers in 1992-1993 and was enhanced with parallel adaptive mesh refinement in 1998-2000. CTH versions prior to 7.0 were given descriptive names that typically included the month and year of the distribution. Below is a partial list of earlier versions and complete feature changes for versions after 7.0.
August '93
March '99
February '01
January '02
Interim '03 (July, 2003)
Version 7.0 (April, 2005)
Version 7.1 (December, 2005)
Version 8.0 (April,2007)
Version 8.1 (December, 2007)
Version 9.0 (February, 2009)
Version 9.1 (December, 2009)
Version 10.0 (January, 2011)
Version 10.1 (August, 2011)
Version 7.0 (April, 2005)
- Document version (7.0) and CTH version (7.0) are now identical.
- Merged CTHGEN into CTH documentation (CTHGEN is deprecated).
- Discard given new velocity-based discard and new upper pressure limit of 1e99 (upper pressure limit was previously 0).
- Added Rajendran-Grove constitutive model.
- Added MPCMOD and MPGMOD (Nonequilibrium Multiphase Mixture) options.
- Added SPYHIS capability.
- CTH distribution includes benchmark directory that can be used to verify a build.
- Bug fixes and improvements for treatment of mixed cells, proper discard of velocity after material discard, treatment of p-alpha model behavior in the elastic regime, fracture
behavior tracer migration in parallel calculations and treatment of mixed cells containing traditional EP materials.
Version 7.1 (December, 2005)
- Robustness improvements for the geo-effective stress model.
- Diatom changes: bug fixes for the ogive shape option, performance improvements when many packages are used, new parallelepiped, parallelogram and triangle shape options.
- AMR changes: refinement bug fix for calculation of cell pressure, bug fix for DeltaT indicator option, bug fixes for boundary conditions 0.1, 1.0 and 2.1.
- Spymaster changes: new spcth file format to support >2 GB file sizes, new DataOut capability for ascii dump of spatial data, block edges can now be plotted on fixed planes, bug fix to prevent tic labels from sometimes extending past the edge of the graph...and many others...
- Bug fix for 2.1 and 3.0 boundary conditions at the Bottom Z boundary.
- Performance improvements: eliminated EOS calls in ghost cells, removed unnecessary code for AMR and parallel calculations.
- Improvements to octh file readability
- Improved mmp3 option (mmp0 is still the recommended option, however)
- Bug fixes and other improvements to prevent instability and non-physical states: improved calculation of stable time step in cells that contain void, improved CKVOL coding to remove imbalance that could lead to unphysical particle velocities, EOSMAP coding to prevent the use of materials with zero sound speed (an error condition returning from the EOS).
- New Weibull distribution option added to Johnson-Cook Fracture and Grady-Kipp fracture models.
- New documentation: cth71.pdf and spy21.pdf
- Pressure Shear Damage (PSDam) model introduced to represent materials exhibiting pressure-dependent strength properties that include different strengths in isotropic tension and compression, shear-induced dilatation, strain hardening, strain-rate dependency, and porosity-dependent strength.
Version 8.0 (April, 2007)
- Change to F90 for memory management to move away from deprecated Cray Pointers – allowing up to 16 GB memory allocation on 64-bit platforms.
- Unlimited tracers are now allowed.
- Momentum remap improvements to prevent large fictitious velocities.
- Windows spcth file format now supports >2GB file sizes.
- Windows 64-bit version distributed and supported. However, 2GB restart file limit under Windows is still a known issue.
- Linux binary distributions for 32- and 64-bit using unified executables optimized for Intel and AMD chips. Intel MPI runtime package is provided so turnkey cluster computing with CTH can be realized.
- New Diatom options for exact UDS-based shape options.
- New Diatom capability to import binary Exodus files.
- Improvements to the RIGID algorithm to support code coupling.
- Support for G95 compiles under Linux provided.
- New user variable option provided for Spymaster.
- New Warning/Bad EOSMAP options in CTH control section to allow more user control over acceptance/denial of bad thermodynamic states.
- New Zerilli-Armstrong Modified model incorporated (from ARL).
- Improvements to Tepla and Weibul Distribution models implemented.
- New AMR capability to allow construction of Indicators using material state variables.
- Increased allowed number of AMR indicators to 100 (from 20).
- AMR parent block balancing implemented.
- New parallel tree-based self-gravity option implemented.
Version 8.1 (December, 2007)
- Bug fix for AMR blocks with fewer than 8 zones in the Z direction.
- Bug fix for BCAT on AMD 64-bit processors.
- Two-way coupling support with Presto provided.
- New Amix model added.
- New moving rigid material option implemented.
- Improvements to the Weibul distribution model.
- Added corrections for ambiguous keywords in MTS, Tepla and CDAR_K.
- New exclude material option for indicators.
- Bug fixes for negative residual volume checks.
- Improvements to backup restart handling.
- Bug fix for Silling's Shearband Model.
- New backup auto-restart capability.
- Increased maximum Spymaster image size to 8192x8192 from 4096x4096.
- Added run-time option for large sesame tables.
- New MIG ANEOS model added to replace the old ANEOS interface – predefined ANEOS materials provided in EOS_data.
- Upgraded Mesa graphics library (for Spymaster) to version 3.2.1 (from 3.0).
- Improved CPU timer resolution.
- Bug fix for XCELL option to allow initialization of user-defined extra variables from DIATOM.
- Numerous Spymaster bug fixes and improvements.
Version 9.0 (February, 2009)
- New 1-D AMR capability
- Improvements for 20,000+ processor runs
- Added linear interpolation backup to SESAME EOS routines
- Automatic units conversion capability added to Spymaster
- Improvements to octh file readability
- Bounding box information added to DIATOM diagnostics
- New LMAT performance improving capability
- New directional composite capability
- Implemented SWRI foam model
- Implemented CDAR-K model
- Bug fix in MIG ANEOS model and several new geological materials added.
- Many Spymaster bug fixes and improvements
- Bug fixes for the self gravity capability
- Shell coupling support added for CTH/Presto
Version 9.1 (December, 2009)
- ANEOS improvements and bug fixes completed. Melosh treatment of diatomic and triatomic molecules added. New SiO2 model parameters provided in EOS_data.
- Graded p-alpha implemented.
- Many Spymaster bug fixes and improvements (e.g. line thickness bug, bug fix for labeling of English units).
- BCAT bug fixes for CJ and Hugoniot state calculations.
- BLINT improvements for AMR.
Version 10.0 (January, 2011)
- Improved Material Interface
- New total energy conservation option
- Increased number of materials (from 20 to 50)
- New GUI installer for Windows, Linux, Mac
- New Parallel MPI Windows capability
- New DEFAULT_CTH_SYSTEM environment variable (for builds)
- Various Spymaster improvements and bug fixes
- Added image compare feature to benchmarking capability
- Added Exodus output option to Spymaster
- Zero velocity bug fix at true mesh boundaries
- Bug fix for empty or corrupt history files
- Added simple stop tracer capability
- Added QSAVE keyword to CONTROL
- Added BFK parameters for seven concretes
- Added simple validation (comparison to experimental data) capability to benchmarks
- Bug fix for AMR use of VMAG in indicators
- Fixed various bugs and warnings detected by Cray compilers
Version 10.1 (August, 2011)
- Added total material volume (VTOT) to Spymaster hscth output.
- AMR bug fix for "difference" and "gradient" indicators at sound speed absorbing (1) boundaries.
- SMYRA bug fix to prevent unphysical motion of material flecks with volume fraction less than 2.5E10-6
- Spymaster bug fixes and additional features.
- Bug fix to heat conduction time step calculation in 1-D and 2-D.
- R2DP bug fix to prevent small sliver of void along the axis of symmetry.
- Diatom STL insertion bug fixes and improvements.
- Added Diatom parameter LILVF – the volume fraction used internally at the lowest iteration level (default is 0.5…sometimes 1.0 will give better results for some shapes).
- Fixed a restart bug for MCM and MCMPLAS models.
- Bug fixes for Diatom expressions ({}s).
- Self gravity performance improvements.