https://gitlab.opengeosys.org/ogs/ogs.git
Revision e35ef356ff378abbfa5b767dcfd2db4afc529405 authored by Dmitri Naumov on 09 December 2015, 16:37:53 UTC, committed by Thomas Fischer on 14 December 2015, 09:50:03 UTC
Use reserve and push_back for copy instead of resize saving initialization of the data.
1 parent b2f4478
Tip revision: e35ef356ff378abbfa5b767dcfd2db4afc529405 authored by Dmitri Naumov on 09 December 2015, 16:37:53 UTC
[MeL] Assert materials PropVector. Speedup copy.
[MeL] Assert materials PropVector. Speedup copy.
Tip revision: e35ef35
CHANGELOG.md
# 6.0.4 (in preparation)
### Infrastructure
- Added CMake option `OGS_CPU_ARCHITECTURE`, #858, [donwloadable binaries](http://docs.opengeosys.org/download) 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`)
### Documentation
- Added [offline viewable Doxygen documentation](http://docs.opengeosys.org/docs/devguide/documentation/offline-documentation-viewer)
# 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](https://github.com/ufz/ogs/pull/714) 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](http://mxe.cc/): build native Windows binaries on Linux and Mac OS, see [Cross-Compiling help page](http://docs.opengeosys.org/docs/devguide/advanced/cross-compiling) 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
![unstrut_heterogeneous_rivers_top_layer_diff_recharge-no_recharge](https://cloud.githubusercontent.com/assets/329493/10043383/f75b837a-61f2-11e5-952e-f75d5d5a195b.png)
## 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](https://github.com/ufz/ogs/releases/tag/6.0.2)
## Release notes
The second release of ogs6 introduces Neumann boundary conditions and VTK result output.
### Features:
- [Neumann boundary conditions](http://docs.opengeosys.org/docs/benchmarks/elliptic/groundwater-flow-neumann)
- Implement mesh properties for storage of data fields. This also includes mapped values (e.g. based on material id) [PR #542](https://github.com/ufz/ogs/pull/542), [PR #644](https://github.com/ufz/ogs/pull/644),
- Refactored mesh property classes to [enable VTK output](https://github.com/ufz/ogs/pull/692)
- Extended the available elements to quadratic (e.g. Quad8) based on generalized "element rules". [#572](https://github.com/ufz/ogs/pull/572), [PR #656](https://github.com/ufz/ogs/pull/656), [PR #657](https://github.com/ufz/ogs/pull/657),
- Extend computation of shape matrices to lower dimensional elements embedded in higher dimensional space [#655](https://github.com/ufz/ogs/pull/655)
- Builds with MinGW (GCC) on Windows, see [Developer Guide](http://docs.opengeosys.org/docs/devguide/getting-started/prerequisites) and the new MinGW platform instructions
- [Cross-compiling for Windows with MXE on Mac OS](http://docs.opengeosys.org/docs/devguide/advanced/cross-compiling)
- [Support for new cross-platform IDE CLion](http://docs.opengeosys.org/docs/devguide/development-workflows/development-ides#clion)
- Add gradual refinement to the structured mesh generator [PR #539](https://github.com/ufz/ogs/pull/539)
- Add a command line tool "queryMesh" to search mesh information [PR #665](https://github.com/ufz/ogs/pull/665)
- Add a command line tool "AddTopLayer" to add an additional top layer (for example a soil layer, see also the [documentation](http://docs.opengeosys.org/docs/tools/meshing/addtoplayer)) [PR #649](https://github.com/ufz/ogs/pull/649)
### Fixes
- Performance optimizations in VTK mesh conversion, [PR #695](https://github.com/ufz/ogs/pull/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](https://svn.ufz.de:8443/job/OGS-6/job/Tests_Linux/) and [nightly large tests](https://svn.ufz.de:8443/job/OGS-6/job/Tests_Linux_Large/)
- Utilities are build by separate Jenkins Jobs, e.g. [Win_Utils](https://svn.ufz.de:8443/job/OGS-6/job/Win_Utils/)
## Test examples
- [Groundwater flow (Neumann)](http://docs.opengeosys.org/docs/benchmarks/elliptic/groundwater-flow-neumann):
![](http://docs.opengeosys.org/assets/files/Documentation/Selected-Benchmarks/groundwaterflow-neumann/square_1e2_neumann_result.png)
## 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](https://github.com/ufz/ogs/releases/tag/6.0.1)
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
## Test examples
![](https://cloud.githubusercontent.com/assets/329493/6170573/ce9fd96c-b2d5-11e4-9936-a470e7be281f.png)
- 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
Computing file changes ...