Commit 15a1f351 authored by Zhenguo Yan's avatar Zhenguo Yan

updates from master again

parent 20663401
...@@ -45,6 +45,7 @@ docker-build-nektar: ...@@ -45,6 +45,7 @@ docker-build-nektar:
variables: variables:
image_name: nektarpp/nektar image_name: nektarpp/nektar
dockerfile: docker/nektar/Dockerfile dockerfile: docker/nektar/Dockerfile
GIT_SUBMODULE_STRATEGY: normal
docker-build-workbook: docker-build-workbook:
<<: *docker_build_template <<: *docker_build_template
......
[submodule "docs/tutorial"] [submodule "docs/tutorial"]
branch = master branch = master
path = docs/tutorial path = docs/tutorial
url = git@gitlab.nektar.info:nektar/tutorial url = https://gitlab.nektar.info/nektar/tutorial.git
ignore = all ignore = all
...@@ -216,6 +216,7 @@ v5.0.0 ...@@ -216,6 +216,7 @@ v5.0.0
**Packaging:** **Packaging:**
- Add Dockerfiles and gitlab CI configuration for automatic builds (!1021, - Add Dockerfiles and gitlab CI configuration for automatic builds (!1021,
!1092) !1092)
!1092, !1098)
v4.4.2 v4.4.2
------ ------
......
# Doxygen support # Doxygen support
# adapted from http://www.bluequartz.net/projects/EIM_Segmentation/ SoftwareDocumentation/html/usewithcmakeproject.html # adapted from http://www.bluequartz.net/projects/EIM_Segmentation/
# SoftwareDocumentation/html/usewithcmakeproject.html
OPTION(NEKTAR_BUILD_DOC "Build source code documentation using doxygen" OFF) OPTION(NEKTAR_BUILD_DOC "Build source code documentation using doxygen" OFF)
CMAKE_DEPENDENT_OPTION(NEKTAR_BUILD_DOC_QHP CMAKE_DEPENDENT_OPTION(NEKTAR_BUILD_DOC_QHP
...@@ -11,6 +12,9 @@ CMAKE_DEPENDENT_OPTION(NEKTAR_BUILD_DOC_XCODE ...@@ -11,6 +12,9 @@ CMAKE_DEPENDENT_OPTION(NEKTAR_BUILD_DOC_XCODE
CMAKE_DEPENDENT_OPTION(NEKTAR_BUILD_DOC_ECLIPSE CMAKE_DEPENDENT_OPTION(NEKTAR_BUILD_DOC_ECLIPSE
"Use Doxygen to create documentation for Eclipse" OFF "Use Doxygen to create documentation for Eclipse" OFF
"NEKTAR_BUILD_DOC" OFF) "NEKTAR_BUILD_DOC" OFF)
CMAKE_DEPENDENT_OPTION(NEKTAR_BUILD_DOC_FIXEDWIDTH
"Use a fixed-width style sheet for doxygen output" OFF
"NEKTAR_BUILD_DOC" OFF)
IF (NEKTAR_BUILD_DOC) IF (NEKTAR_BUILD_DOC)
FIND_PACKAGE(Doxygen) FIND_PACKAGE(Doxygen)
...@@ -27,18 +31,23 @@ IF (NEKTAR_BUILD_DOC) ...@@ -27,18 +31,23 @@ IF (NEKTAR_BUILD_DOC)
IF(NEKTAR_BUILD_DOC_ECLIPSE) IF(NEKTAR_BUILD_DOC_ECLIPSE)
SET(DOXYGEN_GENERATE_ECLIPSEHELP "YES") SET(DOXYGEN_GENERATE_ECLIPSEHELP "YES")
ENDIF() ENDIF()
INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/docs/doxygen/
DESTINATION ${NEKTAR_DOC_DIR})
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/docs/doxygen/Doxyfile.in SET(DOXYGEN_EXTRA_CSS "")
IF(NEKTAR_BUILD_DOC_FIXEDWIDTH)
SET(DOXYGEN_EXTRA_CSS "docs/doxygen/doxygen-fixed-width.css")
ENDIF()
INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/docs/doxygen/html/
DESTINATION ${NEKTAR_DOC_DIR}/doxygen)
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/docs/doxygen/Doxyfile.in
${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile @ONLY IMMEDIATE) ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile @ONLY IMMEDIATE)
ADD_CUSTOM_TARGET(doc ADD_CUSTOM_TARGET(doc
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${CMAKE_COMMAND} -E copy
${CMAKE_SOURCE_DIR}/docs/doxygen/doxygen-fixed-width.css ${CMAKE_SOURCE_DIR}/docs/doxygen/doxygen-fixed-width.css
${PROJECT_BINARY_DIR}/docs/doxygen/doxygen-fixed-width.css ${PROJECT_BINARY_DIR}/docs/doxygen/doxygen-fixed-width.css
COMMAND ${DOXYGEN_EXECUTABLE} COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile
${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile
SOURCES ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile) SOURCES ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile)
ENDIF (NEKTAR_BUILD_DOC) ENDIF (NEKTAR_BUILD_DOC)
......
...@@ -17,21 +17,23 @@ IF (NEKTAR_BUILD_PYTHON) ...@@ -17,21 +17,23 @@ IF (NEKTAR_BUILD_PYTHON)
ENDIF() ENDIF()
IF (NOT NEKTAR_PYTHON3_STATUS STREQUAL NEKTAR_USE_PYTHON3) IF (NOT NEKTAR_PYTHON3_STATUS STREQUAL NEKTAR_USE_PYTHON3)
# Unset any existing python executable/library settings so that we can unset(PYTHON_EXECUTABLE CACHE)
# rediscover correct python version if v2/3 settings changed. unset(PYTHON_INCLUDE_DIR CACHE)
IF (DEFINED NEKTAR_PYTHON3_STATUS) unset(PYTHON_LIBRARY CACHE)
unset(PYTHON_EXECUTABLE CACHE) unset(PYTHON_LIBRARY_DEBUG CACHE)
unset(PYTHON_INCLUDE_DIR CACHE) unset(BOOST_PYTHON_LIB CACHE)
unset(PYTHON_LIBRARY CACHE) unset(BOOST_NUMPY_LIB CACHE)
unset(PYTHON_LIBRARY_DEBUG CACHE) SET(NEKTAR_PYTHON3_STATUS ${NEKTAR_USE_PYTHON3} CACHE INTERNAL "")
unset(BOOST_PYTHON_LIB CACHE) ENDIF()
unset(BOOST_NUMPY_LIB CACHE)
ENDIF()
SET(PYTHONVER 2.7) SET(PYTHONVER 2.7)
IF (NEKTAR_USE_PYTHON3) IF (NEKTAR_USE_PYTHON3)
SET(PYTHONVER 3.0) SET(PYTHONVER 3.0)
ENDIF() ENDIF()
# Find Python
FIND_PACKAGE(PythonInterp ${PYTHONVER} REQUIRED)
FIND_PACKAGE(PythonLibsNew ${PYTHONVER} REQUIRED)
# Find Python # Find Python
FIND_PACKAGE(PythonInterp ${PYTHONVER} REQUIRED) FIND_PACKAGE(PythonInterp ${PYTHONVER} REQUIRED)
...@@ -91,6 +93,18 @@ IF (NEKTAR_BUILD_PYTHON) ...@@ -91,6 +93,18 @@ IF (NEKTAR_BUILD_PYTHON)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS})
ADD_DEFINITIONS(-DWITH_PYTHON) ADD_DEFINITIONS(-DWITH_PYTHON)
# Try to find Boost.NumPy
FIND_LIBRARY(BOOST_NUMPY_LIB
NAMES boost_numpy-py${BOOST_PYTHON_VERSION_MAJOR}${BOOST_PYTHON_VERSION_MINOR}${BOOST_LIB_SUFFIX}
boost_numpy${BOOST_PYTHON_VERSION_MAJOR}${BOOST_PYTHON_VERSION_MINOR}${BOOST_LIB_SUFFIX}
boost_numpy-py${BOOST_PYTHON_VERSION_MAJOR}${BOOST_LIB_SUFFIX}
boost_numpy${BOOST_PYTHON_VERSION_MAJOR}${BOOST_LIB_SUFFIX}
boost_numpy${BOOST_LIB_SUFFIX}
PATHS ${Boost_LIBRARY_DIRS})
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS})
ADD_DEFINITIONS(-DWITH_PYTHON)
MESSAGE(STATUS "Found Python: ${PYTHON_EXECUTABLE}") MESSAGE(STATUS "Found Python: ${PYTHON_EXECUTABLE}")
MESSAGE(STATUS "Found Boost.Python: ${BOOST_PYTHON_LIB}") MESSAGE(STATUS "Found Boost.Python: ${BOOST_PYTHON_LIB}")
......
...@@ -12,7 +12,9 @@ RUN DEBIAN_RELEASE=buster && \ ...@@ -12,7 +12,9 @@ RUN DEBIAN_RELEASE=buster && \
libfftw3-dev libhdf5-dev libhdf5-mpi-dev liblapack-dev liboce-foundation-dev \ libfftw3-dev libhdf5-dev libhdf5-mpi-dev liblapack-dev liboce-foundation-dev \
liboce-modeling-dev liboce-ocaf-dev libtet1.5-dev libtriangle-dev \ liboce-modeling-dev liboce-ocaf-dev libtet1.5-dev libtriangle-dev \
libtinyxml-dev mpi-default-dev petsc-dev zlib1g-dev python-numpy libptscotch-dev \ libtinyxml-dev mpi-default-dev petsc-dev zlib1g-dev python-numpy libptscotch-dev \
libarpack2-dev libarpack2-dev \
texlive-base texlive-latex-extra texlive-science texlive-fonts-recommended texlive-pstricks \
doxygen graphviz imagemagick
RUN groupadd nektar && useradd -m -g nektar nektar RUN groupadd nektar && useradd -m -g nektar nektar
USER nektar:nektar USER nektar:nektar
......
...@@ -4,26 +4,30 @@ LABEL maintainer="David Moxey <d.moxey@exeter.ac.uk>" ...@@ -4,26 +4,30 @@ LABEL maintainer="David Moxey <d.moxey@exeter.ac.uk>"
COPY --chown=nektar:nektar . /home/nektar COPY --chown=nektar:nektar . /home/nektar
ARG BUILD_DOCS=ON
ARG BUILD_DEMOS=OFF ARG BUILD_DEMOS=OFF
ARG BUILD_SOLVERS=ON ARG BUILD_SOLVERS=ON
ARG INSTALL_PREFIX=/usr/local ARG INSTALL_PREFIX=/usr/local
RUN mkdir build && cd build && \ RUN mkdir build && cd build && \
cmake \ cmake \
-DNEKTAR_BUILD_DEMOS=${BUILD_DEMOS} \ -DNEKTAR_BUILD_DEMOS=${BUILD_DEMOS} \
-DNEKTAR_BUILD_TESTS=OFF \ -DNEKTAR_BUILD_DOC=${BUILD_DOCS} \
-DNEKTAR_BUILD_UNIT_TESTS=OFF \ -DNEKTAR_BUILD_TESTS=OFF \
-DNEKTAR_BUILD_SOLVERS=${BUILD_SOLVERS} \ -DNEKTAR_BUILD_UNIT_TESTS=OFF \
-DNEKTAR_BUILD_PYTHON=ON \ -DNEKTAR_BUILD_SOLVERS=${BUILD_SOLVERS} \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \ -DNEKTAR_BUILD_PYTHON=ON \
-DNEKTAR_USE_MESHGEN=ON \ -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
-DNEKTAR_USE_MPI=ON \ -DNEKTAR_USE_MESHGEN=ON \
-DNEKTAR_USE_ARPACK=ON \ -DNEKTAR_USE_MPI=ON \
-DNEKTAR_USE_FFTW=ON \ -DNEKTAR_USE_ARPACK=ON \
-DNEKTAR_USE_HDF5=ON \ -DNEKTAR_USE_FFTW=ON \
-DNEKTAR_USE_CCM=ON \ -DNEKTAR_USE_HDF5=ON \
.. && \ -DNEKTAR_USE_CCM=ON \
make -j$(nproc) .. && \
make -j$(nproc) && \
make -j$(nproc) user-guide-pdf developer-guide-pdf \
tutorials-pdf doc
USER root USER root
RUN cd build && make install && make nekpy-install-system && cd .. RUN cd build && make install && make nekpy-install-system && cd ..
......
...@@ -20,6 +20,8 @@ path to the Nektar++ source tree. It supports three additional build arguments: ...@@ -20,6 +20,8 @@ path to the Nektar++ source tree. It supports three additional build arguments:
default; default;
- `BUILD_SOLVERS` can be set to `OFF` to disable build of solvers, which are - `BUILD_SOLVERS` can be set to `OFF` to disable build of solvers, which are
enabled by default; enabled by default;
- `BUILD_ARGS` can be set to `ON` to build doxygen documentation, which are
enabled by default;
- `INSTALL_PREFIX` can be set to adjust the install prefix, which is - `INSTALL_PREFIX` can be set to adjust the install prefix, which is
`/usr/local` by default. `/usr/local` by default.
......
...@@ -50,3 +50,17 @@ ADD_CUSTOM_TARGET(developer-guide-pdf ...@@ -50,3 +50,17 @@ ADD_CUSTOM_TARGET(developer-guide-pdf
COMMAND ${PDFLATEX} --output-directory ${DEVGUIDE} ${DEVGUIDESRC}/developers-guide.tex COMMAND ${PDFLATEX} --output-directory ${DEVGUIDE} ${DEVGUIDESRC}/developers-guide.tex
WORKING_DIRECTORY ${DEVGUIDESRC} WORKING_DIRECTORY ${DEVGUIDESRC}
) )
# Install output, if it is generated.
INSTALL(CODE "IF (EXISTS ${DEVGUIDE}/html)
FILE(GLOB DGHTML ${DEVGUIDE}/html/*)
LIST(LENGTH DGHTML DGHTML_LEN)
IF(DGHTML_LEN GREATER 0)
FILE(INSTALL ${DEVGUIDE}/html
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/developers-guide)
ENDIF()
ENDIF()
IF (EXISTS ${DEVGUIDE}/developers-guide.pdf)
FILE(INSTALL ${DEVGUIDE}/developers-guide.pdf
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/developers-guide)
ENDIF()")
...@@ -97,8 +97,7 @@ This developer's guide, like most of \nek{}, is not due to one sole person but a ...@@ -97,8 +97,7 @@ This developer's guide, like most of \nek{}, is not due to one sole person but a
\paragraph{Spencer J. Sherwin}: Prof. Spencer Sherwin is a Professor of Computational Fluid Mechanics in the Department of Aeronautics at Imperial \paragraph{Spencer J. Sherwin}: Prof. Spencer Sherwin is a Professor of Computational Fluid Mechanics in the Department of Aeronautics at Imperial
College London (UK). College London (UK).
\paragraph{Chris D. Cantwell}: Dr. Chris Cantwell is a Research Fellow in the Department of Aeronautics at Imperial \paragraph{Chris D. Cantwell}: Dr. Chris Cantwell is a Senior Lecturer in Aeronautics in the Department of Aeronautics at Imperial College London (UK).
College London (UK).
\paragraph{David Moxey}: Dr. David Moxey is a Senior Lecturer in Engineering in the College of Engineering, Mathematics and Physical Sciences \paragraph{David Moxey}: Dr. David Moxey is a Senior Lecturer in Engineering in the College of Engineering, Mathematics and Physical Sciences
at the University of Exeter (UK). at the University of Exeter (UK).
......
...@@ -215,6 +215,7 @@ To build the User Guide and Developer's Guide, the following dependencies are re ...@@ -215,6 +215,7 @@ To build the User Guide and Developer's Guide, the following dependencies are re
\item texlive-latex-extra \item texlive-latex-extra
\item texlive-science \item texlive-science
\item texlive-fonts-recommended \item texlive-fonts-recommended
\item texlive-pstricks
\item imagemagick \item imagemagick
\end{itemize} \end{itemize}
......
...@@ -682,7 +682,7 @@ LAYOUT_FILE = ...@@ -682,7 +682,7 @@ LAYOUT_FILE =
# search path. Do not use file names with spaces, bibtex cannot handle them. See # search path. Do not use file names with spaces, bibtex cannot handle them. See
# also \cite for info how to create references. # also \cite for info how to create references.
CITE_BIB_FILES = doxygen.bib CITE_BIB_FILES = docs/doxygen/doxygen.bib
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to warning and progress messages # Configuration options related to warning and progress messages
...@@ -1120,7 +1120,7 @@ HTML_STYLESHEET = ...@@ -1120,7 +1120,7 @@ HTML_STYLESHEET =
# see the documentation. # see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET = doxygen-fixed-width.css HTML_EXTRA_STYLESHEET = @DOXYGEN_EXTRA_CSS@
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note # other source files which should be copied to the HTML output directory. Note
...@@ -2157,7 +2157,7 @@ CLASS_GRAPH = YES ...@@ -2157,7 +2157,7 @@ CLASS_GRAPH = YES
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
COLLABORATION_GRAPH = YES COLLABORATION_GRAPH = NO
# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for # If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
# groups, showing the direct groups dependencies. # groups, showing the direct groups dependencies.
...@@ -2202,7 +2202,7 @@ TEMPLATE_RELATIONS = NO ...@@ -2202,7 +2202,7 @@ TEMPLATE_RELATIONS = NO
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
INCLUDE_GRAPH = YES INCLUDE_GRAPH = NO
# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are # If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
# set to YES then doxygen will generate a graph for each documented file showing # set to YES then doxygen will generate a graph for each documented file showing
...@@ -2211,7 +2211,7 @@ INCLUDE_GRAPH = YES ...@@ -2211,7 +2211,7 @@ INCLUDE_GRAPH = YES
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
INCLUDED_BY_GRAPH = YES INCLUDED_BY_GRAPH = NO
# If the CALL_GRAPH tag is set to YES then doxygen will generate a call # If the CALL_GRAPH tag is set to YES then doxygen will generate a call
# dependency graph for every global function or class method. # dependency graph for every global function or class method.
...@@ -2260,7 +2260,7 @@ DIRECTORY_GRAPH = YES ...@@ -2260,7 +2260,7 @@ DIRECTORY_GRAPH = YES
# The default value is: png. # The default value is: png.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
DOT_IMAGE_FORMAT = png DOT_IMAGE_FORMAT = svg
# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to # If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
# enable generation of interactive SVG images that allow zooming and panning. # enable generation of interactive SVG images that allow zooming and panning.
......
Subproject commit 8f8ed6f96bad562bedd8c242a4dc247e605ca20d Subproject commit 851f7583b288fb264e1d95db647eb541c054962a
...@@ -51,3 +51,17 @@ ADD_CUSTOM_TARGET(user-guide-pdf ...@@ -51,3 +51,17 @@ ADD_CUSTOM_TARGET(user-guide-pdf
COMMAND ${PDFLATEX} --output-directory ${USERGUIDE} ${USERGUIDESRC}/user-guide.tex COMMAND ${PDFLATEX} --output-directory ${USERGUIDE} ${USERGUIDESRC}/user-guide.tex
WORKING_DIRECTORY ${USERGUIDESRC} WORKING_DIRECTORY ${USERGUIDESRC}
) )
# Install output, if it is generated.
INSTALL(CODE "IF (EXISTS ${USERGUIDE}/html)
FILE(GLOB UGHTML ${USERGUIDE}/html/*)
LIST(LENGTH UGHTML UGHTML_LEN)
IF(UGHTML_LEN GREATER 0)
FILE(INSTALL ${USERGUIDE}/html
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/user-guide)
ENDIF()
ENDIF()
IF (EXISTS ${USERGUIDE}/user-guide.pdf)
FILE(INSTALL ${USERGUIDE}/user-guide.pdf
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/user-guide)
ENDIF()")
This diff is collapsed.
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
#include <fstream> #include <fstream>
#include <LibUtilities/LinearAlgebra/SparseMatrixFwd.hpp> #include <LibUtilities/LinearAlgebra/SparseMatrixFwd.hpp>
#include <LibUtilities/BasicUtils/SharedArray.hpp> ///< \todo: forward declare #include <LibUtilities/BasicUtils/SharedArray.hpp>
#include <boost/call_traits.hpp> #include <boost/call_traits.hpp>
......
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
#include <fstream> #include <fstream>
#include <LibUtilities/LinearAlgebra/SparseMatrixFwd.hpp> #include <LibUtilities/LinearAlgebra/SparseMatrixFwd.hpp>
#include <LibUtilities/BasicUtils/SharedArray.hpp> ///< \todo: forward declare #include <LibUtilities/BasicUtils/SharedArray.hpp>
#include <boost/call_traits.hpp> #include <boost/call_traits.hpp>
......
...@@ -42,7 +42,7 @@ ...@@ -42,7 +42,7 @@
#include <memory> #include <memory>
#include <LibUtilities/BasicConst/NektarUnivTypeDefs.hpp> #include <LibUtilities/BasicConst/NektarUnivTypeDefs.hpp>
#include <LibUtilities/BasicUtils/SharedArray.hpp> ///< \todo: forward declare #include <LibUtilities/BasicUtils/SharedArray.hpp>
namespace Nektar namespace Nektar
......
This diff is collapsed.
This diff is collapsed.
...@@ -226,43 +226,6 @@ namespace Nektar ...@@ -226,43 +226,6 @@ namespace Nektar
v_EvaluateBoundaryConditions(0.0, variable); v_EvaluateBoundaryConditions(0.0, variable);
} }
// void DisContField3DHomogeneous1D::EvaluateBoundaryConditions(
// const NekDouble time,
// const std::string varName)
// {
// int n;
// const Array<OneD, const NekDouble> z = m_homogeneousBasis->GetZ();
// Array<OneD, NekDouble> local_z(m_planes.num_elements());
// for (n = 0; n < m_planes.num_elements(); n++)
// {
// local_z[n] = z[m_transposition->GetPlaneID(n)];
// }
// for (n = 0; n < m_planes.num_elements(); ++n)
// {
// m_planes[n]->EvaluateBoundaryConditions(
// time, varName, 0.5*m_lhom*(1.0+local_z[n]));
// }
// // Fourier transform coefficient space boundary values
// // This will only be undertaken for time dependent
// // boundary conditions unless time == 0.0 which is the
// // case when the method is called from the constructor.
// for (n = 0; n < m_bndCondExpansions.num_elements(); ++n)
// {
// if (time == 0.0 ||
// m_bndConditions[n]->IsTimeDependent() )
// {
// m_BndCondBwdWeight[n] = 1.0;
// m_bndCondExpansions[n]->HomogeneousFwdTrans(
// m_bndCondExpansions[n]->GetCoeffs(),
// m_bndCondExpansions[n]->UpdateCoeffs());
// }
// }
// v_EvaluateBoundaryConditions(0.0, varName);
// }
void DisContField3DHomogeneous1D::v_HelmSolve( void DisContField3DHomogeneous1D::v_HelmSolve(
const Array<OneD, const NekDouble> &inarray, const Array<OneD, const NekDouble> &inarray,
Array<OneD, NekDouble> &outarray, Array<OneD, NekDouble> &outarray,
......
This diff is collapsed.
...@@ -221,7 +221,7 @@ namespace Nektar ...@@ -221,7 +221,7 @@ namespace Nektar
Array<OneD, NekDouble> &outarray); Array<OneD, NekDouble> &outarray);
/// This function calculates the inner product of a function /// This function calculates the inner product of a function
/// \f$f(\boldsymbol{x})\f$ with respect to all \emph{local} /// \f$f(\boldsymbol{x})\f$ with respect to all \em local
/// expansion modes \f$\phi_n^e(\boldsymbol{x})\f$. /// expansion modes \f$\phi_n^e(\boldsymbol{x})\f$.
inline void IProductWRTBase_IterPerExp( inline void IProductWRTBase_IterPerExp(
const Array<OneD, const NekDouble> &inarray, const Array<OneD, const NekDouble> &inarray,
...@@ -235,7 +235,7 @@ namespace Nektar ...@@ -235,7 +235,7 @@ namespace Nektar
/// This function calculates the inner product of a function /// This function calculates the inner product of a function
/// \f$f(\boldsymbol{x})\f$ with respect to the derivative (in /// \f$f(\boldsymbol{x})\f$ with respect to the derivative (in
/// direction \param dir) of all \emph{local} expansion modes /// direction \param dir) of all \em local expansion modes
/// \f$\phi_n^e(\boldsymbol{x})\f$. /// \f$\phi_n^e(\boldsymbol{x})\f$.
MULTI_REGIONS_EXPORT void IProductWRTDerivBase( MULTI_REGIONS_EXPORT void IProductWRTDerivBase(
const int dir, const int dir,
...@@ -249,7 +249,7 @@ namespace Nektar ...@@ -249,7 +249,7 @@ namespace Nektar
/// This function calculates the inner product of a function /// This function calculates the inner product of a function
/// \f$f(\boldsymbol{x})\f$ with respect to the derivative (in /// \f$f(\boldsymbol{x})\f$ with respect to the derivative (in
/// direction \param dir) of all \emph{local} expansion modes /// direction \param dir) of all \em local expansion modes
/// \f$\phi_n^e(\boldsymbol{x})\f$. /// \f$\phi_n^e(\boldsymbol{x})\f$.
MULTI_REGIONS_EXPORT void IProductWRTDerivBase MULTI_REGIONS_EXPORT void IProductWRTDerivBase
(const Array<OneD, const Array<OneD, NekDouble> > &inarray, (const Array<OneD, const Array<OneD, NekDouble> > &inarray,
......
...@@ -43,18 +43,17 @@ ...@@ -43,18 +43,17 @@
#include <LibUtilities/Interpreter/Interpreter.h> #include <LibUtilities/Interpreter/Interpreter.h>
#include <LibUtilities/Memory/NekMemoryManager.hpp> #include <LibUtilities/Memory/NekMemoryManager.hpp>
/**
* @brief class for meshing individual curves (1d meshing)
*/
namespace Nektar namespace Nektar
{ {
namespace NekMeshUtils namespace NekMeshUtils
{ {
//forward
class CurveMesh; class CurveMesh;
typedef std::shared_ptr<CurveMesh> CurveMeshSharedPtr; typedef std::shared_ptr<CurveMesh> CurveMeshSharedPtr;
/**
* @brief class for meshing individual curves (1d meshing)
*/
class CurveMesh class CurveMesh
{ {
public: public:
......
...@@ -49,9 +49,10 @@ namespace Nektar ...@@ -49,9 +49,10 @@ namespace Nektar
namespace SolverUtils namespace SolverUtils
{ {
/// Defines a callback function which evaluates the flux vector \f$ F(u) /**
/// \f$ in a conservative advection of the form \f$ \nabla\cdot F(u) * Defines a callback function type which evaluates the flux vector \f$ F(u) \f$
/// \f$. * in a conservative advection of the form \f$ \nabla\cdot F(u) \f$.
*/
typedef std::function<void ( typedef std::function<void (
const Array<OneD, Array<OneD, NekDouble> >&, const Array<OneD, Array<OneD, NekDouble> >&,
Array<OneD, Array<OneD, Array<OneD, NekDouble> > >&)> Array<OneD, Array<OneD, Array<OneD, NekDouble> > >&)>
......
...@@ -311,10 +311,11 @@ namespace Nektar ...@@ -311,10 +311,11 @@ namespace Nektar
} }
template<typename FuncPointerT, typename ObjectPointerT> template<typename FuncPointerT, typename ObjectPointerT>
void SetArtificialDiffusionVector(FuncPointerT func, ObjectPointerT obj) void SetFluxPenaltyNS(FuncPointerT func, ObjectPointerT obj)
{ {
m_ArtificialDiffusionVector = std::bind( m_fluxPenaltyNS = std::bind(
func, obj, std::placeholders::_1, std::placeholders::_2); func, obj, std::placeholders::_1, std::placeholders::_2,
std::placeholders::_3);
} }
template<typename FuncPointerT, typename ObjectPointerT> template<typename FuncPointerT, typename ObjectPointerT>
......
...@@ -510,6 +510,7 @@ namespace Nektar ...@@ -510,6 +510,7 @@ namespace Nektar
++step; ++step;
++stepCounter; ++stepCounter;
} }
// Print out summary statistics // Print out summary statistics
if (m_session->GetComm()->GetRank() == 0) if (m_session->GetComm()->GetRank() == 0)
{