From 61b457500e589e0f4c5c310e6bd702218542558a Mon Sep 17 00:00:00 2001 From: michael Date: Thu, 13 Jan 2022 18:04:46 +0100 Subject: [PATCH] Updated documentation --- CDMATH/CMakeLists.txt | 3 +- CMakeLists.txt | 7 ++ CoreFlows/CMakeLists.txt | 3 +- CoreFlows/Documentation/install.dox | 38 ++++----- CoreFlows/Doxyfile.in | 124 ++++++++++++++++++++++++---- CoreFlows/README.md | 42 +++++----- README.md | 18 ++-- 7 files changed, 168 insertions(+), 67 deletions(-) diff --git a/CDMATH/CMakeLists.txt b/CDMATH/CMakeLists.txt index 3ac2251..8097324 100755 --- a/CDMATH/CMakeLists.txt +++ b/CDMATH/CMakeLists.txt @@ -75,8 +75,7 @@ endif(CDMATH_WITH_PETSC) # Documentation if (CDMATH_WITH_DOCUMENTATION) configure_file (Doxyfile.in ${PROJECT_BINARY_DIR}/Doxyfile @ONLY IMMEDIATE) - add_custom_target (docCDMATH COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile - SOURCES ${PROJECT_BINARY_DIR}/Doxyfile) + add_custom_target (docCDMATH COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile SOURCES ${PROJECT_BINARY_DIR}/Doxyfile) if ( IS_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/html) install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/html DESTINATION share/doc/cdmath-dev-doc) endif( IS_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/html) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9e255b0..6136307 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -646,6 +646,10 @@ if (SOLVERLAB_WITH_DOCUMENTATION) if (NOT DOXYGEN_FOUND) message (FATAL_ERROR "Doxygen is needed to build the documentation. Please install it correctly.") endif(NOT DOXYGEN_FOUND) + + configure_file (Doxyfile.in ${PROJECT_BINARY_DIR}/Doxyfile @ONLY IMMEDIATE) + add_custom_target (doc COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile SOURCES ${PROJECT_BINARY_DIR}/Doxyfile) # + install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/html DESTINATION share/doc/solverlab-dev-doc OPTIONAL) # endif(SOLVERLAB_WITH_DOCUMENTATION) if (SOLVERLAB_WITH_TESTS) # @@ -658,6 +662,9 @@ if (SOLVERLAB_WITH_TESTS) ENDIF( DEFINED CPPUNIT_ROOT_DIR) ENDIF( DEFINED CPPUNIT_ROOT_DIR OR DEFINED ENV{CPPUNIT_ROOT_DIR}) find_package (CPPUNIT REQUIRED) + + add_custom_target (cpp COMMAND ctest -R .exe)# may be replace ctest -R with ctest -L + add_custom_target (mpi COMMAND ctest -R Proc)# may be replace ctest -R with ctest -L endif(SOLVERLAB_WITH_TESTS) # Enter subdirectories diff --git a/CoreFlows/CMakeLists.txt b/CoreFlows/CMakeLists.txt index d72b351..947665f 100755 --- a/CoreFlows/CMakeLists.txt +++ b/CoreFlows/CMakeLists.txt @@ -65,13 +65,12 @@ endif(COREFLOWS_WITH_PYTHON) # if (COREFLOWS_WITH_DOCUMENTATION) # configure_file (Doxyfile.in ${PROJECT_BINARY_DIR}/Doxyfile @ONLY IMMEDIATE) # + add_custom_target (docCoreFlows COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/Doxyfile SOURCES ${PROJECT_BINARY_DIR}/Doxyfile) # FILE(GLOB_RECURSE CoreFlows_Documentation ${CoreFlows_SOURCE_DIR}/Documentation *.dox) # SET(Documentation_SRC # ${PROJECT_BINARY_DIR}/Doxyfile # ${CoreFlows_Documentation} # ) # - add_custom_target (docCoreFlows COMMAND ${DOXYGEN_EXECUTABLE} # - SOURCES ${PROJECT_BINARY_DIR}/Doxyfile) # install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/html DESTINATION share/doc/coreflows-dev-doc OPTIONAL) # INSTALL(FILES ${CoreFlows_SOURCE_DIR}/Documentation/CoreFlows.pdf DESTINATION share/doc OPTIONAL) # endif(COREFLOWS_WITH_DOCUMENTATION) # diff --git a/CoreFlows/Documentation/install.dox b/CoreFlows/Documentation/install.dox index 9685b4d..c29bf41 100755 --- a/CoreFlows/Documentation/install.dox +++ b/CoreFlows/Documentation/install.dox @@ -2,8 +2,8 @@ \page install Installation and use of CoreFlows -CDMATH-CoreFlows is currently developped and maintained on Fedora and Ubuntu distributions. -CDMATH-CoreFlows relies on the numerical toolbox of the project [CDMATH]((http://cdmath.jimdo.com)) for the handling of meshes and fields, and on the library [PETSC](https://www.mcs.anl.gov/petsc/) for the handling of large sparse matrices. +SOLVERLAB-CoreFlows is currently developped and maintained on Fedora and Ubuntu distributions. +SOLVERLAB-CoreFlows relies on the numerical toolbox of the project [CDMATH]((http://cdmath.jimdo.com)) for the handling of meshes and fields, and on the library [PETSC](https://www.mcs.anl.gov/petsc/) for the handling of large sparse matrices. You will need the packages '\a cmake ', '\a gcc', '\a gfortran' and '\a hdf5', plus '\a doxygen' if you want to generate this documentation and '\a swig' if you want to use python scripts. Download and compilation of CDMATH and PETSc @@ -15,13 +15,13 @@ First create and enter a working dir cd ~/workspace/cdmath \endverbatim -In order to download the approriate branch of \ref cdmath either unzip the following file to a directory cdmath-master +In order to download the approriate branch of \ref cdmath either unzip the following file to a directory solverlab-master \verbatim https://github.com/ndjinga/CDMATH/archive/master.zip \endverbatim -or clone the git repository to a folder cdmath-master +or clone the git repository to a folder solverlab-master \verbatim -git clone https://github.com/ndjinga/CDMATH.git cdmath-master +git clone https://github.com/ndjinga/CDMATH.git solverlab-master \endverbatim In order to compile \ref cdmath you will need at least the libraries '\a cmake ', '\a gcc', '\a gfortran' , and '\a hdf5' plus optionally '\a swig' 'python-dev' and '\a numpy' if you intend to use \ref cdmath functions in your python scripts. @@ -38,7 +38,7 @@ Enter the build directory Then run the commands \verbatim - cmake ../cdmath-master/ -DCMAKE_INSTALL_PREFIX=../cdmath_install -DCMAKE_BUILD_TYPE=Release -DCDMATH_WITH_PYTHON=ON -DCDMATH_WITH_PETSC=ON + cmake ../solverlab-master/ -DCMAKE_INSTALL_PREFIX=../cdmath_install -DCMAKE_BUILD_TYPE=Release -DCDMATH_WITH_PYTHON=ON -DCDMATH_WITH_PETSC=ON make make install \endverbatim @@ -49,24 +49,24 @@ Download and compilation of CoreFlows --------------------------------------------- First create and access a working directory : \verbatim - mkdir -p ~/workspace/CDMATH-CoreFlows - cd ~/workspace/CDMATH-CoreFlows + mkdir -p ~/workspace/SOLVERLAB-CoreFlows + cd ~/workspace/SOLVERLAB-CoreFlows \endverbatim Now create build and install repositories: \verbatim -mkdir CDMATH-CoreFlows_build CDMATH-CoreFlows_install +mkdir SOLVERLAB-CoreFlows_build SOLVERLAB-CoreFlows_install \endverbatim -In order to download CDMATH-CoreFlows either unzip the following file to a directory CDMATH-CoreFlows-master +In order to download SOLVERLAB-CoreFlows either unzip the following file to a directory SOLVERLAB-CoreFlows-master \verbatim - https://github.com/ndjinga/CDMATH-CoreFlows/archive/master.zip + https://github.com/ndjinga/SOLVERLAB-CoreFlows/archive/master.zip \endverbatim -or clone the git repository to a folder CDMATH-CoreFlows-master +or clone the git repository to a folder SOLVERLAB-CoreFlows-master \verbatim -git clone https://github.com/ndjinga/CDMATH-CoreFlows.git CDMATH-CoreFlows-master +git clone https://github.com/ndjinga/SOLVERLAB-CoreFlows.git SOLVERLAB-CoreFlows-master \endverbatim -Either of these latter commands results in the creation of a directory `~/workspace/CDMATH-CoreFlows/CDMATH-CoreFlows-master` containing the source files. +Either of these latter commands results in the creation of a directory `~/workspace/SOLVERLAB-CoreFlows/SOLVERLAB-CoreFlows-master` containing the source files. In the following steps we assume that 'PETSc' (version 3.4 or more recent) has been installed with 'CDMATH' with the process described above. You need to set the following variables @@ -79,17 +79,17 @@ source ~/workspace/cdmath/cdmath_install/env_CDMATH.sh \endverbatim Go to the build directory \verbatim -cd CDMATH-CoreFlows_build +cd SOLVERLAB-CoreFlows_build \endverbatim Then run the command \verbatim -../CDMATH-CoreFlows-master/configure --prefix=../CDMATH-CoreFlows_install/ --with-petsc-dir=$PETSC_DIR --with-petsc-arch=$PETSC_ARCH --with-cdmath-dir=$CDMATH_DIR --with-python --with-doc +../SOLVERLAB-CoreFlows-master/configure --prefix=../SOLVERLAB-CoreFlows_install/ --with-petsc-dir=$PETSC_DIR --with-petsc-arch=$PETSC_ARCH --with-cdmath-dir=$CDMATH_DIR --with-python --with-doc make doc install \endverbatim You can add the following optional commands -- `--with-gui`, if you want to use CDMATH-CoreFlows as a Salomé module (you will need to use a Salomé shell) -- `--with-debug`, if you want to use CDMATH-CoreFlows in debug mode instead of the default optimised mode +- `--with-gui`, if you want to use SOLVERLAB-CoreFlows as a Salomé module (you will need to use a Salomé shell) +- `--with-debug`, if you want to use SOLVERLAB-CoreFlows in debug mode instead of the default optimised mode Use of CoreFlows ---------------- @@ -109,7 +109,7 @@ Then you can run the simulation in any directory with the command line $CoreFlows \endverbatim -- If you use python language: edit your own python file my_file.py following for example the pattern of the file CDMATH-CoreFlows-master/main.py. Then in a terminal type +- If you use python language: edit your own python file my_file.py following for example the pattern of the file SOLVERLAB-CoreFlows-master/main.py. Then in a terminal type \verbatim python my_file.py \endverbatim diff --git a/CoreFlows/Doxyfile.in b/CoreFlows/Doxyfile.in index a770ea3..3026b2a 100755 --- a/CoreFlows/Doxyfile.in +++ b/CoreFlows/Doxyfile.in @@ -26,7 +26,7 @@ DOXYFILE_ENCODING = UTF-8 # identify the project. Note that if you do not use Doxywizard you need # to put quotes around the project name if it contains spaces. -PROJECT_NAME = CDMATH-CoreFlows +PROJECT_NAME = SOLVERLAB-CoreFlows # The PROJECT_NUMBER tag can be used to enter a project or revision number. # This could be handy for archiving the generated documentation or @@ -783,6 +783,13 @@ FILTER_SOURCE_FILES = NO FILTER_SOURCE_PATTERNS = +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that +# is part of the input, its contents will be placed on the main page +# (index.html). This can be useful if you have a project on for instance GitHub +# and want to reuse the introduction page also for the doxygen output. + +USE_MDFILE_AS_MAINPAGE = @PROJECT_SOURCE_DIR@/README.md + #--------------------------------------------------------------------------- # configuration options related to source browsing #--------------------------------------------------------------------------- @@ -797,7 +804,7 @@ SOURCE_BROWSER = YES # Setting the INLINE_SOURCES tag to YES will include the body # of functions and classes directly in the documentation. -INLINE_SOURCES = YES +INLINE_SOURCES = NO # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct # doxygen to hide any special comment blocks from generated source code @@ -825,11 +832,35 @@ REFERENCES_RELATION = NO REFERENCES_LINK_SOURCE = YES -# If the USE_HTAGS tag is set to YES then the references to source code -# will point to the HTML generated by the htags(1) tool instead of doxygen -# built-in source browser. The htags tool is part of GNU's global source -# tagging system (see http://www.gnu.org/software/global/global.html). You -# will need version 4.8.6 or higher. +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the +# source code will show a tooltip with additional information such as prototype, +# brief description and links to the definition and documentation. Since this +# will make the HTML file larger and loading of large files a bit slower, you +# can opt to disable this feature. +# The default value is: YES. +# This tag requires that the tag SOURCE_BROWSER is set to YES. + +SOURCE_TOOLTIPS = YES + +# If the USE_HTAGS tag is set to YES then the references to source code will +# point to the HTML generated by the htags(1) tool instead of doxygen built-in +# source browser. The htags tool is part of GNU's global source tagging system +# (see http://www.gnu.org/software/global/global.html). You will need version +# 4.8.6 or higher. +# +# To use it do the following: +# - Install the latest version of global +# - Enable SOURCE_BROWSER and USE_HTAGS in the config file +# - Make sure the INPUT points to the root of the source tree +# - Run doxygen as normal +# +# Doxygen will invoke htags (and that will in turn invoke gtags), so these +# tools must be available from the command line (i.e. in the search path). +# +# The result: instead of the source browser generated by doxygen, the links to +# source code will now point to the output of htags. +# The default value is: NO. +# This tag requires that the tag SOURCE_BROWSER is set to YES. USE_HTAGS = NO @@ -1151,7 +1182,7 @@ ENUM_VALUES_PER_LINE = 4 # By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, # and Class Hierarchy pages using a tree view instead of an ordered list. -USE_INLINE_TREES = NO +USE_INLINE_TREES = YES # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be # used to set the initial width (in pixels) of the frame in which the tree @@ -1226,6 +1257,59 @@ SEARCHENGINE = YES SERVER_BASED_SEARCH = NO +# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP +# script for searching. Instead the search results are written to an XML file +# which needs to be processed by an external indexer. Doxygen will invoke an +# external search engine pointed to by the SEARCHENGINE_URL option to obtain the +# search results. +# +# Doxygen ships with an example indexer ( doxyindexer) and search engine +# (doxysearch.cgi) which are based on the open source search engine library +# Xapian (see: http://xapian.org/). +# +# See the section "External Indexing and Searching" for details. +# The default value is: NO. +# This tag requires that the tag SEARCHENGINE is set to YES. + +EXTERNAL_SEARCH = NO + +# The SEARCHENGINE_URL should point to a search engine hosted by a web server +# which will return the search results when EXTERNAL_SEARCH is enabled. +# +# Doxygen ships with an example indexer ( doxyindexer) and search engine +# (doxysearch.cgi) which are based on the open source search engine library +# Xapian (see: http://xapian.org/). See the section "External Indexing and +# Searching" for details. +# This tag requires that the tag SEARCHENGINE is set to YES. + +SEARCHENGINE_URL = + +# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed +# search data is written to a file for indexing by an external tool. With the +# SEARCHDATA_FILE tag the name of this file can be specified. +# The default file is: searchdata.xml. +# This tag requires that the tag SEARCHENGINE is set to YES. + +SEARCHDATA_FILE = searchdata.xml + +# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the +# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is +# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple +# projects and redirect the results back to the right project. +# This tag requires that the tag SEARCHENGINE is set to YES. + +EXTERNAL_SEARCH_ID = + +# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen +# projects other than the one defined by this configuration file, but that are +# all added to the same external search index. Each project needs to have a +# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of +# to a relative location where the documentation can be found. The format is: +# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ... +# This tag requires that the tag SEARCHENGINE is set to YES. + +EXTRA_SEARCH_MAPPINGS = + #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- @@ -1347,12 +1431,15 @@ RTF_OUTPUT = rtf COMPACT_RTF = NO -# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated -# will contain hyperlink fields. The RTF file will -# contain links (just like the HTML output) instead of page references. -# This makes the output suitable for online browsing using WORD or other -# programs which support those fields. -# Note: wordpad (write) and others do not support links. +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will +# contain hyperlink fields. The RTF file will contain links (just like the HTML +# output) instead of page references. This makes the output suitable for online +# browsing using Word or some other Word compatible readers that support those +# fields. +# +# Note: WordPad (write) and others do not support links. +# The default value is: NO. +# This tag requires that the tag GENERATE_RTF is set to YES. RTF_HYPERLINKS = YES @@ -1579,6 +1666,13 @@ ALLEXTERNALS = NO EXTERNAL_GROUPS = YES +# If the EXTERNAL_PAGES tag is set to YES all external pages will be listed in +# the related pages index. If set to NO, only the current project's pages will +# be listed. +# The default value is: YES. + +EXTERNAL_PAGES = YES + # The PERL_PATH should be the absolute path and name of the perl script # interpreter (i.e. the result of `which perl'). @@ -1705,7 +1799,7 @@ INCLUDED_BY_GRAPH = YES # the time of a run. So in most cases it will be better to enable call graphs # for selected functions only using the \callgraph command. -CALL_GRAPH = NO +CALL_GRAPH = YES # If the CALLER_GRAPH and HAVE_DOT tags are set to YES then # doxygen will generate a caller dependency graph for every global function diff --git a/CoreFlows/README.md b/CoreFlows/README.md index 723658d..01f2963 100755 --- a/CoreFlows/README.md +++ b/CoreFlows/README.md @@ -1,7 +1,7 @@ -CDMATH-CoreFlows +SOLVERLAB-CoreFlows ================ -CDMATH-CoreFlows is an open source C++/Python library intended at solving PDE systems +SOLVERLAB-CoreFlows is an open source C++/Python library intended at solving PDE systems arising from the thermalhydraulics of two phase flows in power plant boilers. It is a simple environment meant at students and researchers to test new numerical methods on general geometries with unstructured meshes. It is developped by @@ -17,7 +17,7 @@ are the study of - New preconditioners for implicit methods for two phase flows - The coupling of fluid models or multiphysics coupling (eg thermal hydraulics and neutronics or thermal hydraulics and solid thermics) -CDMATH-CoreFlows relies on the numerical toolbox [CDMATH-Toolbox](https://github.com/ndjinga/CDMATH) of the project [CDMATH](http://cdmath.jimdo.com) for the handling of meshes and fields, and on the library [PETSC](https://www.mcs.anl.gov/petsc/) for the handling of large sparse matrices. +SOLVERLAB-CoreFlows relies on the numerical toolbox [SOLVERLAB-Toolbox](https://github.com/ndjinga/CDMATH) of the project [CDMATH](http://cdmath.jimdo.com) for the handling of meshes and fields, and on the library [PETSC](https://www.mcs.anl.gov/petsc/) for the handling of large sparse matrices. You will need the packages 'doxygen' if you want to generate de documentation and 'swig' if you want to use python scripts. The software is currently developed for linux distributions and is maintained on Ubuntu 16.04 LTS, 18.04 LTS and 20.04 LTS, as well as on Fedora 24, 26, 28, 30 and 32. User guide @@ -35,7 +35,7 @@ The user guide is organized as follows : - [Software structure](Documentation/software.md) - [The numerical methods](Documentation/numericalPage.ipynb) - [Summary of available functionalities](Documentation/functionalities.ipynb) -- [CDMATH-CoreFlows example scripts](Documentation/examples.md) +- [SOLVERLAB-CoreFlows example scripts](Documentation/examples.md) Download and compilation of CDMATH and PETSc -------------------------------------------- @@ -71,16 +71,16 @@ By default, [CDMATH-Toolbox](https://github.com/ndjinga/CDMATH) will compile a n Download and compilation of CoreFlows --------------------------------------------- First create and access a working directory : -- `mkdir -p ~/workspace/CDMATH-CoreFlows ` -- `cd ~/workspace/CDMATH-CoreFlows ` +- `mkdir -p ~/workspace/SOLVERLAB-CoreFlows ` +- `cd ~/workspace/SOLVERLAB-CoreFlows ` Now create build and install repositories: -- `mkdir CDMATH-CoreFlows_build CDMATH-CoreFlows_install ` +- `mkdir SOLVERLAB-CoreFlows_build SOLVERLAB-CoreFlows_install ` -In order to download CDMATH-CoreFlows either unzip the following file to a directory CDMATH-CoreFlows-master -- `https://github.com/ndjinga/CDMATH-CoreFlows/archive/master.zip` -or clone the git repository to a folder CDMATH-CoreFlows-master -- `git clone https://github.com/ndjinga/CDMATH-CoreFlows.git CDMATH-CoreFlows-master` -Either of these latter commands results in the creation of a directory `~/workspace/CDMATH-CoreFlows/CDMATH-CoreFlows-master` containing the source files. +In order to download SOLVERLAB-CoreFlows either unzip the following file to a directory SOLVERLAB-CoreFlows-master +- `https://github.com/ndjinga/SOLVERLAB-CoreFlows/archive/master.zip` +or clone the git repository to a folder SOLVERLAB-CoreFlows-master +- `git clone https://github.com/ndjinga/SOLVERLAB/CoreFlows/CoreFlows.git SOLVERLAB-CoreFlows-master` +Either of these latter commands results in the creation of a directory `~/workspace/SOLVERLAB-CoreFlows/SOLVERLAB-CoreFlows-master` containing the source files. In the following steps we assume that [PETSC](https://www.mcs.anl.gov/petsc/) (version 3.4 or more recent) has been installed with CDMATH with the process described above. You need to set the following variables @@ -98,26 +98,26 @@ Go to the build directory - `cd CoreFlows_build ` Then run the command -- `../CDMATH-CoreFlows-master/configure --prefix=../CDMATH-CoreFlows_install/ --with-petsc-dir=$PETSC_DIR --with-petsc-arch=$PETSC_ARCH --with-cdmath-dir=$CDMATH_INSTALL --with-python --with-doc` +- `../SOLVERLAB-CoreFlows-master/configure --prefix=../SOLVERLAB-CoreFlows_install/ --with-petsc-dir=$PETSC_DIR --with-petsc-arch=$PETSC_ARCH --with-cdmath-dir=$CDMATH_INSTALL --with-python --with-doc` - `make doc install` You can add the following optional commands -- `--with-gui`, if you want to use CDMATH-CoreFlows as a Salomé module (you will need to use a Salomé shell) -- `--with-debug`, if you want to use CDMATH-CoreFlows in debug mode instead of the default optimised mode +- `--with-gui`, if you want to use SOLVERLAB-CoreFlows as a Salomé module (you will need to use a Salomé shell) +- `--with-debug`, if you want to use SOLVERLAB-CoreFlows in debug mode instead of the default optimised mode -Use of CDMATH-CoreFlows +Use of SOLVERLAB-CoreFlows ----------------------- -First load CDMATH-CoreFlows environment from the CoreFlows-master directory -- `source ~/workspace/CDMATH-CoreFlows/CDMATH-CoreFlows_install/env_CoreFlows.sh ` +First load SOLVERLAB-CoreFlows environment from the CoreFlows-master directory +- `source ~/workspace/SOLVERLAB-CoreFlows/SOLVERLAB-CoreFlows_install/env_CoreFlows.sh ` If you use C language: edit the file CoreFlows-master/CoreFlows_src/main.cxx then in a terminal type -- `cd ~/workspace/CDMATH-CoreFlows/CDMATH-CoreFlows_build ` +- `cd ~/workspace/SOLVERLAB-CoreFlows/SOLVERLAB-CoreFlows_build ` - `make` - `make install` Then you can run the simulation in any directory with the command line - `$CoreFlows ` -If you use python language: edit your own python file `my_file.py` following for example the pattern of the file `CDMATH-CoreFlows-master/main.py`. Then in a terminal type +If you use python language: edit your own python file `my_file.py` following for example the pattern of the file `SOLVERLAB-CoreFlows-master/main.py`. Then in a terminal type - `python my_file.py ` If you use the graphic interface, you need to run a [SALOME](https://www.salome-platform.org/) Unix shell @@ -126,4 +126,4 @@ and type the command line - `runSalome -mCOREFLOWS` then click on new study to open CoreFlows interface -The complete documentation is available in the directory `~/workspace/CDMATH-CoreFlows/CDMATH-CoreFlows_install/share/doc/` +The complete documentation is available in the directory `~/workspace/SOLVERLAB-CoreFlows/SOLVERLAB-CoreFlows_install/share/doc/` diff --git a/README.md b/README.md index b6b7c3a..b89880f 100755 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ The main research objectives of SOLVERLAB are the study of - New preconditioners for implicit methods for two phase flows - The coupling of fluid models or multiphysics coupling (eg thermal hydraulics and neutronics or thermal hydraulics and solid thermics) -The library is currently maintained and distributed by the SALOME developpement team on various linux distributions (Ubuntu, CentOS, Fedora, Debian) and on Windows10. +The library is currently maintained and distributed by the SALOME developpement team on various linux distributions (Ubuntu, CentOS, Fedora, Debian) and on Windows-10. The corresponding binary files can be found [here](https://www.salome-platform.org/downloads/current-version). Examples of use @@ -41,14 +41,16 @@ Examples of use - [Surface Finite elements for the Poisson-Beltrami problem on a sphere in 3D (by M. Nguemfouo, PhD student)](CDMATH/tests/doc/3DPoissonSphereEF/SynthesisConvergenceFESphere.pdf) - [Surface Finite elements for the Poisson-Beltrami problem on a torus in 3D (by M. Nguemfouo, PhD student)](CDMATH/tests/doc/3DPoissonTorusEF/SynthesisConvergenceFETorus.pdf) -Download SOLVERLAB sources to compile +Download SOLVERLAB sources for compilation ---------------------------------- +The easiest way to use SOLVERLAB is to download the SALOME binary file corresponding to your operating system [here](https://www.salome-platform.org/downloads/current-version). +However the binary file can be very large (up to 5GB). Compilation of SOLVERLAB from source files can provide a better alternative using less disk and memory space. -Create your source directory. For instance: +To compile SOLVERLAB source, first create a source directory, for instance with: * `mkdir ~/workspace/SOLVERLAB` * `cd ~/workspace/SOLVERLAB` -Download from GitHub +Download SOLVERLAB source from GitHub * click on the following link : `https://github.com/ndjinga/SOLVERLAB/archive/master.zip`, then unzip the file in a directory SOLVERLAB-master * or type the following in a terminal : `wget https://github.com/ndjinga/SOLVERLAB/archive/master.zip`, then unzip the file in a directory SOLVERLAB-master * or clone the git repository to a folder SOLVERLAB-master: `git clone https://github.com/ndjinga/SOLVERLAB.git SOLVERLAB-master` @@ -78,7 +80,7 @@ Directories. Create the suggested build and installation folders: Compile and install SOLVERLAB -------------------------- Simpler build for a minimum version: -* `cmake ../SOLVERLAB-master/ -DCMAKE_INSTALL_PREFIX=../SOLVERLAB_install -DCMAKE_BUILD_TYPE=Release ` +* `cmake ../SOLVERLAB-master/ -DCMAKE_INSTALL_PREFIX=../SOLVERLAB_install -DCMAKE_BUILD_TYPE=Release -DSOLVERLAB_WITH_GUI=ON -DSOLVERLAB_WITH_DOCUMENTATION=ON ` > This will download and build the following dependencies > - PETSc from http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.16.0.tar.gz > - SLEPc from https://slepc.upv.es/download/distrib/slepc-3.16.0.tar.gz @@ -90,10 +92,10 @@ Simpler build for a minimum version: If you already have an installation of PETSC, MED and MEDCoupling, you may save computational time and memory by using the following cmake instruction: * `cmake ../SOLVERLAB-master -DCMAKE_INSTALL_PREFIX=../SOLVERLAB_install -DCMAKE_BUILD_TYPE=Release -G"Eclipse CDT4 - Unix Makefiles" -D_ECLIPSE_VERSION=4.3 -DSOLVERLAB_WITH_DOCUMENTATION=ON -DPETSC_DIR=${PETSC_DIR} -DPETSC_ARCH=${PETSC_ARCH} -DMEDFILE_ROOT_DIR=${MEDFILE_ROOT_DIR} -DMEDCOUPLING_ROOT_DIR=${MEDCOUPLING_ROOT_DIR} -DSOLVERLAB_WITH_GUI=ON` > This assumes that you have an existing -> - install of PETSc (with submodules SLEPC and HDF5) at the location given by the environment variable PETSC_DIR and the architecture variable PETSC_ARCH +> - installation of PETSc (with submodules SLEPC and HDF5) at the location given by the environment variable PETSC_DIR and the architecture variable PETSC_ARCH > See the instructions given in [the official documentation](http://www.mcs.anl.gov/petsc/documentation/installation.html) -> - install of MED at the location given by the environment variable MEDFILE_ROOT_DIR -> - install of MEDCOUPLING at the location given by the environment variable MEDCOUPLING_ROOT_DIR +> - installation of MED at the location given by the environment variable MEDFILE_ROOT_DIR +> - installation of MEDCOUPLING at the location given by the environment variable MEDCOUPLING_ROOT_DIR The 3 dependencies PETSC, MED and MEDCOUPLING should have been compiled with the same version of HDF5 Warning : the linux package libhdf5-dev is generally not compatible with the libraries MED and MEDCoupling -- 2.39.2