From 2d3b14245133fe68569186fef8e1f4ab970c904e Mon Sep 17 00:00:00 2001 From: Wolfgang Bangerth Date: Sun, 26 Apr 2020 15:50:24 -0600 Subject: [PATCH] Provide the infrastructure files for step-58. --- doc/doxygen/tutorial/tutorial.h.in | 37 ++++++++++++++++++-- examples/step-58/CMakeLists.txt | 55 ++++++++++++++++++++++++++++++ examples/step-58/doc/builds-on | 1 + examples/step-58/doc/kind | 2 ++ examples/step-58/doc/tooltip | 1 + 5 files changed, 94 insertions(+), 2 deletions(-) create mode 100644 examples/step-58/CMakeLists.txt create mode 100644 examples/step-58/doc/builds-on create mode 100644 examples/step-58/doc/kind create mode 100644 examples/step-58/doc/tooltip diff --git a/doc/doxygen/tutorial/tutorial.h.in b/doc/doxygen/tutorial/tutorial.h.in index ca7a1dcfdd..951a5e360e 100644 --- a/doc/doxygen/tutorial/tutorial.h.in +++ b/doc/doxygen/tutorial/tutorial.h.in @@ -504,6 +504,11 @@ * * * + * step-58 + * The nonlinear Schrödinger equation. + * + * + * * step-59 * Solving a Poisson problem discretized with an interior penalty DG * method and a multilevel preconditioner in a matrix-free fashion using @@ -567,6 +572,7 @@ * * * + * * *

Tutorial programs grouped by topics

* @@ -817,6 +823,12 @@ * * * + * Operator splitting + * + * step-21, step-31, step-32, step-58 + * + * + * * Boundary element methods, curved manifolds * * @@ -907,6 +919,7 @@ * step-44, * step-47, * step-46, + * step-58, * step-62 * * @@ -996,6 +1009,8 @@ * * * + * + * *

Other equations

* * @@ -1100,7 +1115,8 @@ * step-23, * step-24, * step-25, - * step-48 + * step-48, + * step-58 * * * @@ -1138,12 +1154,21 @@ * * * + * + * + * + * + * * * * * *
The nonlinear Schrödinger equation + * step-58
Coupling different equations in different parts of the domain * step-46
+ * + * + * *

%Vector problems

* * @@ -1207,6 +1232,7 @@ *
* * + * *

Time dependent problems

* * @@ -1240,7 +1266,8 @@ * * * @@ -1263,6 +1290,12 @@ * * * + * + * + * + * + * * * diff --git a/examples/step-58/CMakeLists.txt b/examples/step-58/CMakeLists.txt new file mode 100644 index 0000000000..6186c2b9a4 --- /dev/null +++ b/examples/step-58/CMakeLists.txt @@ -0,0 +1,55 @@ +## +# CMake script for the step-58 tutorial program: +## + +# Set the name of the project and target: +SET(TARGET "step-58") + +# Declare all source files the target consists of. Here, this is only +# the one step-X.cc file, but as you expand your project you may wish +# to add other source files as well. If your project becomes much larger, +# you may want to either replace the following statement by something like +# FILE(GLOB_RECURSE TARGET_SRC "source/*.cc") +# FILE(GLOB_RECURSE TARGET_INC "include/*.h") +# SET(TARGET_SRC ${TARGET_SRC} ${TARGET_INC}) +# or switch altogether to the large project CMakeLists.txt file discussed +# in the "CMake in user projects" page accessible from the "User info" +# page of the documentation. +SET(TARGET_SRC + ${TARGET}.cc + ) + +# Usually, you will not need to modify anything beyond this point... + +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12) + +FIND_PACKAGE(deal.II 9.2.0 QUIET + HINTS ${deal.II_DIR} ${DEAL_II_DIR} ../ ../../ $ENV{DEAL_II_DIR} + ) +IF(NOT ${deal.II_FOUND}) + MESSAGE(FATAL_ERROR "\n" + "*** Could not locate a (sufficiently recent) version of deal.II. ***\n\n" + "You may want to either pass a flag -DDEAL_II_DIR=/path/to/deal.II to cmake\n" + "or set an environment variable \"DEAL_II_DIR\" that contains this path." + ) +ENDIF() + +# +# Are all dependencies fulfilled? +# +IF(NOT (DEAL_II_WITH_UMFPACK AND DEAL_II_WITH_COMPLEX_VALUES)) # keep in one line + MESSAGE(FATAL_ERROR " +Error! This tutorial requires a deal.II library that was configured with the following options: + DEAL_II_WITH_UMFPACK = ON + DEAL_II_WITH_COMPLEX_VALUES = ON +However, the deal.II library found at ${DEAL_II_PATH} was configured with these options + DEAL_II_WITH_UMFPACK = ${DEAL_II_WITH_UMFPACK} + DEAL_II_WITH_COMPLEX_VALUES = ${DEAL_II_WITH_COMPLEX_VALUES} +which conflict with the requirements." + ) +ENDIF() + + +DEAL_II_INITIALIZE_CACHED_VARIABLES() +PROJECT(${TARGET}) +DEAL_II_INVOKE_AUTOPILOT() diff --git a/examples/step-58/doc/builds-on b/examples/step-58/doc/builds-on new file mode 100644 index 0000000000..7beb554cfa --- /dev/null +++ b/examples/step-58/doc/builds-on @@ -0,0 +1 @@ +step-26 step-29 diff --git a/examples/step-58/doc/kind b/examples/step-58/doc/kind new file mode 100644 index 0000000000..53c432fbd8 --- /dev/null +++ b/examples/step-58/doc/kind @@ -0,0 +1,2 @@ +time dependent + diff --git a/examples/step-58/doc/tooltip b/examples/step-58/doc/tooltip new file mode 100644 index 0000000000..456aebcafa --- /dev/null +++ b/examples/step-58/doc/tooltip @@ -0,0 +1 @@ +The complex-valued Nonlinear Schrödinger Equation -- 2.39.5
step-23, * step-24, * step-25, - * step-48 + * step-48, + * step-58 *
The nonlinear Schrödinger equation + * step-58
Time dependent neutron diffusion equation * step-52