-
Notifications
You must be signed in to change notification settings - Fork 0
Adding new source files or factories
Luc Berger edited this page Sep 23, 2019
·
3 revisions
To add new source files, these steps have to be done:
- Create
_decl.hpp
and_def.hpp
files. SeeMueLu_DemoFactory_decl.hpp
andMueLu_DemoFactory_decl.hpp
in themuelu/src/Misc/
folder for an example of aSingleLevelFactoryBase
derived new factory class. - Add your class name to one of the
muelu/src/Utils/ClassLists/
classList files - Run
./gen_all.sh
inmuelu/src/Utils/ClassList/
. Note: Generated files must be checked-in to the repository. - Commit a minor modification to a cmake file to force reconfiguration when other developers update their copy of Trilinos
The following three bullets are not needed anymore but a reconfigure and rebuild of Trilinos is necessary for
Stokhos
to pick-up new factories in MueLu.
- Execute
./gen_cppFiles.sh
instokhos/src/muelu/explicit_instantiation/
to generate the explicit instantiation files for Stokhos/Sacado- Execute
./gen_cppFiles.sh
instokhos/src/sacado/kokkos/pce/muelu/
to generate explicit instantiation files- Execute
./gen_cppFiles.sh
instokhos/src/sacado/kokkos/vector/muelu/
to generate explicit instantiation files
- If the new factory is created inside a new subfolder then the following three lines need to be added to
muelu/src/CMakeLists.txt
:INCLUDE_DIRECTORIES(${DIR}/path/to/folder)
APPEND_GLOB(SOURCES path/to/folder/*.cpp)
TRILINOS_CREATE_CLIENT_TEMPLATE_HEADERS(${DIR}/path/to/folder NOSIERRABJAM)
- Add the
factoryName
tomuelu/src/Interface/MueLu_FactoryFactory_decl.hpp
to have it recognized in the xml files - Add new parameters to
muelu/doc/UserGuide/masterList.xml
and run the scriptmuelu/doc/UserGuide/update_params.sh
, this will generate the necessary entries for your new parameters to be recognized in the easy xml format
Xpetra
MueLu
MueMex
Kokkos refactor
using git
building
debugging
checking code
unit-tests
cdash dashboard
nightly tests
memory checks