-
Christoph Lehmann authoredChristoph Lehmann authored
- Release notes
- 6.0.5 (in preparation)
- Features:
- DataExplorer and utilities
- Infrastructure
- Documentation
- Fixes
- 6.0.4
- Features:
- Infrastructure
- Documentation
- Fixes
- 6.0.3
- Features:
- Fixes
- Infrastructure
- Test examples
- Next steps
- In development
- Planned
- 6.0.2
- Release notes
- Features:
- Fixes
- Infrastructure
- Test examples
- Next steps
- In development
- Planned
- 6.0.1
- Important links:
- Release notes
- Features:
- Fixes
- Test examples
- Next steps
- In development
- Planned
Release notes
6.0.5 (in preparation)
Features:
- Added an ODE solver library that can solve transient and nonlinear processes (see http://doxygen.opengeosys.org/df/d35/group__ODESolver.html).
- Move up common Process parts from particular GroundwaterFlow process implementation. #951, #982
- Separate Dirichlet boundary condition class implementation. #963
- Split process output and post timestep. #998
- Added pre- and postTimestep and -Iteration hooks to processes. #1094, #1100, #1101
- New configuration tree parser
- Checks configuration parameters more strictly, automatically prints error/warning messages.
- Requires Boost >= 1.56 because of boost::optional with move semantics.
- Command line argument
--config-warnings-nonfatal
that keeps OGS from terminating on warnings during configuration file parsing (errors still makes it terminate).
- Axis aligned bounding box:
- Is now a from the right half-open interval.
- Removed template from class declaration.
- MeshLib: Class MeshElementGrid implements a grid data structure supporting search operations.
- Added cmake option
OGS_EIGEN_DYNAMIC_SHAPE_MATRICES
that makes OGS use dynamically. allocated shape matrices. - Added several cmake options for selecting which element types, dimensions and orders to be built. Selecting only few element types speeds up compilation significantly. #1092
- Command line argument
-l
for OGS cli and testrunner to specify verbosity of logging. #1056 - Added possibility to specify after which timesteps there shiuld be output.
- Added possibility to specify timesteps of different size for use with transient processes.
DataExplorer and utilities
- Added command line tool for creating layered meshes from raster files
- OGSFileConverter is now a separate library
- Raster file to structured grid conversion can now convert pixel values in user-defined scalar arrays
- All scalar arrays will be displayed in mesh information window in DataExplorer
- Added generation of structured meshes to DataExplorer
- Restructured mesh creation access in DataExplorer
- Mesh layers can be added to existing meshes in DataExplorer
- Rework tools:
- CreateBoundaryConditionsAlongPolyline
- AddTopLayer
- ResetPropertyInPolygonalRegion
- removeMeshElements
Infrastructure
- Minimum Boost version: 1.56.0. #943
- Boost requirement is now header-only. #940
- Optional support for VTK 7. #1083
- Test data is now a git submodule. #1000
- In-code defined Jenkins jobs. #970
- Use clang's address and undefined behaviour sanitizers on Jenkins now. #958
Documentation
- Speed up builds with ccache, #938
- Overview of the new non-linear, transient solver in [ODESolver](see http://doxygen.opengeosys.org/df/d35/group__ODESolver.html) source code documentation.
Fixes
- Fix bugs in GeoLib:
- lineSegmentIntersects.
- Polygon::splitPolygonAtIntersection.
- Grid.
- GeoMapper: Refactoring few methods, c++11. #977
- Rework FileIO::GMSH interface
- Process geometries located other than in the x-y-plane.
- Respect the scaling factor for Stations.
- Fix memory leaks.
- Added/modified tests for GML-, GMS- and TetGen-files.
6.0.4
Features:
- Parallel computing framework for FEM by using PETSc, which also includes
- Parallel input of partitioned mesh data.
- Parallel output of solutions by using pvtu data format.
- New data structures for mesh properties are used everywhere replacing Element's value member.
- The penalty method to impose first-type boundary conditions was substituted with a non-penalty method for LIS and Eigen linear solvers.
- Support for multiple nodal variables is extended to the boundary conditions, the sparsity pattern.
- Passing of linear solver options from the project files is now possible.
- The global matrix and global vector type of indices is consistent with the linear solver library being used.
Infrastructure
- Added CMake option
OGS_CPU_ARCHITECTURE
, #858, downloadable binaries build by Jenkins should now run on more CPUs - Added CMake options for Boost, VTK and Eigen (
OGS_LIB_BOOST
, ...) to specify if libs are searched on the system first, then build them locally (Default
), or you can specify to just use system libs (System
) or force a local build (Local
) - Added CMake options for enabling Clang sanitizer:
OGS_ADDRESS_SANITIZER
OGS_UNDEFINED_BEHAVIOR_SANITIZER
- The zlib library is removed from ThirdParty directory.
- A LIS solver interface using Eigen's sparse matrices is now available through
CMake option
OGS_USE_EIGENLIS
. - CMake configuration uses ccache if available.
Documentation
Fixes
- Fix all ogs-internal warnings on all OS.
- Move eigen solver compute call to solve(); different fix for 0237275a
6.0.3
Features:
-
Mesh properties are now used for:
- heterogeneous "initial conditions" (actually a start solution vector for the elliptic problem).
- spatially heterogeneous hydraulic conductivity values in the groundwater flow process.
-
First steps towards time dependent problems: Time loop integration for processes is provided.
-
Interpolation of nodal quantities on elements using shape functions.
-
Mesh generator can create surface meshes according to a given function
-
Utilities:
-
MoveGeometry
-
The DOF table handles now all of the provided element types: Hex 8 and 20, Line 2 and 3, Prism 6 and 15, Pyramid 5 and 13, Quad 4, 8, and 9, Tet 4 and 10, Triangle 3 and 6.
-
Eigen linear solver library can be used for solution of the linear systems of equations.
-
Implemented OctTree for fast searching points and nodes
-
Volumetric and surface grid
-
ElementSearcher NodeSearcher improvements
-
Generalized the computation of rotation matrix to xy
Fixes
- FEFLOW interface supports element sets now.
- Reduce compilation times by using forward declarations and removing unnecessary includes and using explicit template instantiation for often required classes.
- GMSH2OGS: fixed bug in cases GMSH mesh does not contain line elements
- CreateBoundaryConditionsAlongPolylines: fixed bug concerning the GeoLib and point ids.
- PointVec corrected point id map
- Shape interface creates polylines in a consistent state
Infrastructure
- Replace quickcheck with autocheck. See https://github.com/thejohnfreeman/autocheck.git for more details on autocheck
- Added support for cross-compiling with MXE: build native Windows binaries on Linux and Mac OS, see Cross-Compiling help page and #767
- Migrated to new Travis infrastructure (faster build times), see #775
- Simplified CMake library linking, see #769
Test examples
- Test case: groundwater flow in the Unstrut catchment (model consists approximately of 9e6 hexahedral cells)
- Simulations using homogeneous and heterogeneous hydraulic conductivity
- Integrated rivers as Dirichlet type boundary conditions
- Integrated groundwater recharge (spatialy homogeneous) as Neumann boundary condition
Next steps
The next big step will be the implementation of a parallelization scheme using PETSc library
In development
- OGS#PETSc interface for parallel computing
- Solving of time dependent problems
Planned
- Implementation of a linear parabolic pde solver
- Extending the linear elliptic solver to non-linear problems
6.0.2
| Released on 2015/06/15, GitHub Release Link
Release notes
The second release of ogs6 introduces Neumann boundary conditions and VTK result output.
Features:
- Neumann boundary conditions
- Implement mesh properties for storage of data fields. This also includes mapped values (e.g. based on material id) PR #542, PR #644,
- Refactored mesh property classes to enable VTK output
- Extended the available elements to quadratic (e.g. Quad8) based on generalized "element rules". #572, PR #656, PR #657,
- Extend computation of shape matrices to lower dimensional elements embedded in higher dimensional space #655
- Builds with MinGW (GCC) on Windows, see Developer Guide and the new MinGW platform instructions
- Cross-compiling for Windows with MXE on Mac OS
- Support for new cross-platform IDE CLion
- Add gradual refinement to the structured mesh generator PR #539
- Add a command line tool "queryMesh" to search mesh information PR #665
- Add a command line tool "AddTopLayer" to add an additional top layer (for example a soil layer, see also the documentation) PR #649
Fixes
- Performance optimizations in VTK mesh conversion, PR #695
- Improve layered prism mesh construction
- Fix a lot of warnings on gcc/clang/msvc compilers improving the code
Infrastructure
- Test runtime is monitored at Jenkins for normal and nightly large tests
- Utilities are build by separate Jenkins Jobs, e.g. Win_Utils
Test examples
Next steps
In development
- Heterogeneous fields (for e.g. hydraulic conductivity parameters)
- Octree data structures for fast searches
- OGS#PETSc interface for parallel computing
Planned
- Parallelization scheme using PETSc library
- Extending the linear elliptic solver to non-linear problems
6.0.1
| Released 2015/03/02, GitHub Release Link
The 6th version of OpenGeoSys (OGS) is under way. After single and coupled FORTRAN modules in ROCKFLOW 1+2, the C version 3 with dynamic data structures, the object-oriented C++ parallelized version 4, completed with data integration and visualization tools by version 5; ogs6 - as an open source project - is aimed at performing on supercomputing platforms and providing complete workflows for solving of coupled multi-field problems in real world applications. The major paradigms of ogs6 are being developer-friendly, performing, and user-friendly.
Important links:
-
Getting started tutorial: http://docs.opengeosys.org/docs/quickstart
-
Descriptions of selected benchmarks: http://docs.opengeosys.org/docs/benchmarks
-
Source code access: https://github.com/ufz/ogs
-
Developer guide: http://docs.opengeosys.org/docs/devguide
Release notes
The first version ogs6 is dedicated for elliptic problems.
Features:
- Basic structures of processes
- Mathematical operations are based on Eigen3 library
- Linear solvers: DenseMatrix with Gauss elimination, and LIS (http://www.ssisc.org/lis/)
- XML based IO
- Standard finite element method (FEM)
- Available element types: lines, triangles, quads, hexahedra
- Dirichlet boundary conditions
- Linear elliptic solver (e.g. Groundwater flow) for scalar quantities in homogeneous media
Fixes
- DenseMatrix Gauss algorithm pivoting
- Fixing mem-leaks on DataExplorer start up
- Fixing resizing and layout issues in various DataExplorer dialogs
Test examples
- Example 1: Unit square (access)
- Example 2: Unit cube (access): has 1000 hexahedra elements with Dirichlet boundary conditions (u=1|x=0) and (u=-1|x=1)
Next steps
In development
- OGS#PETSc interface for parallel computing (02/2015*planned)
- Neuman boundary conditions (03/2015*planned)
Planned
- Parabolic solver