Skip to content

Commit

Permalink
Add step-87
Browse files Browse the repository at this point in the history
  • Loading branch information
peterrum authored and mschreter committed Sep 6, 2023
1 parent b4da721 commit 2bf28f2
Show file tree
Hide file tree
Showing 21 changed files with 2,079 additions and 13 deletions.
Binary file added doc/doxygen/images/step_87_ex_2_p_0.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_ex_2_p_1.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_ex_2_p_2.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_ex_2_res_0.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_ex_2_res_1.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_ex_3_force.0000.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_ex_3_force.0010.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_ex_3_force.0020.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/doxygen/images/step_87_rising_bubble.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
146 changes: 146 additions & 0 deletions doc/doxygen/references.bib
Original file line number Diff line number Diff line change
Expand Up @@ -1697,6 +1697,152 @@ @article{cutfem_2015
}


%-------------------------------------------------------------------------------
% Step 87
%-------------------------------------------------------------------------------
@article{henri2022geometrical,
title={Geometrical level set reinitialization using closest point method and kink detection for thin filaments, topology changes and two-phase flows},
author={Henri, F{\'e}lix and Coquerelle, Mathieu and Lubin, Pierre},
journal={Journal of Computational Physics},
volume={448},
pages={110704},
year={2022},
publisher={Elsevier}
}

@article{coquerelle2016fourth,
title={A fourth-order accurate curvature computation in a level set framework for two-phase flows subjected to surface tension forces},
author={Coquerelle, Mathieu and Glockner, St{\'e}phane},
journal={Journal of Computational Physics},
volume={305},
pages={838--876},
year={2016},
publisher={Elsevier}
}

@article{brackbill1992continuum,
title={A continuum method for modeling surface tension},
author={Brackbill, Jeremiah U and Kothe, Douglas B and Zemach, Charles},
journal={Journal of computational physics},
volume={100},
number={2},
pages={335--354},
year={1992},
publisher={Elsevier}
}

@article{olsson2005conservative,
title={A conservative level set method for two phase flow},
author={Olsson, Elin and Kreiss, Gunilla},
journal={Journal of computational physics},
volume={210},
number={1},
pages={225--246},
year={2005},
publisher={Elsevier}
}

@article{kronbichler2018fast,
title={A fast massively parallel two-phase flow solver for microfluidic chip simulation},
author={Kronbichler, Martin and Diagne, Ababacar and Holmgren, Hanna},
journal={The International Journal of High Performance Computing Applications},
volume={32},
number={2},
pages={266--287},
year={2018},
publisher={SAGE Publications Sage UK: London, England}
}

@article{peskin1977numerical,
title={Numerical analysis of blood flow in the heart},
author={Peskin, Charles S},
journal={Journal of computational physics},
volume={25},
number={3},
pages={220--252},
year={1977},
publisher={Elsevier}
}

@article{unverdi1992front,
title={A front-tracking method for viscous, incompressible, multi-fluid flows},
author={Unverdi, Salih Ozen and Tryggvason, Gr{\'e}tar},
journal={Journal of computational physics},
volume={100},
number={1},
pages={25--37},
year={1992},
publisher={Elsevier}
}

@article{bungartz2016precice,
title={{preCICE} -- a fully parallel library for multi-physics surface coupling},
author={Bungartz, Hans-Joachim and Lindner, Florian and Gatzhammer, Bernhard and Mehl, Miriam and Scheufele, Klaudius and Shukaev, Alexander and Uekermann, Benjamin},
journal={Computers \& Fluids},
volume={141},
pages={250--258},
year={2016},
publisher={Elsevier}
}

@article{chourdakis2021precice,
title={{preCICE} v2: A sustainable and user-friendly coupling library},
author={Chourdakis, Gerasimos and Davis, Kyle and Rodenberg, Benjamin and Schulte, Miriam and Simonis, Fr{\'e}d{\'e}ric and Uekermann, Benjamin and Abrams, Georg and Bungartz, Hans-Joachim and Yau, Lucia Cheung and Desai, Ishaan and others},
journal={arXiv preprint arXiv:2109.14470},
year={2021}
}

@article{lebrun2020arborx,
title={ArborX: A performance portable geometric search library},
author={Lebrun-Grandi{\'e}, Damien and Prokopenko, Andrey and Turcksin, Bruno and Slattery, Stuart R},
journal={ACM Transactions on Mathematical Software (TOMS)},
volume={47},
number={1},
pages={1--15},
year={2020},
publisher={ACM New York, NY, USA}
}

@article{heinz2022high,
title={High-Order Non-Conforming Discontinuous {G}alerkin Methods for the Acoustic Conservation Equations},
author={Heinz, Johannes and Munch, Peter and Kaltenbacher, Manfred},
journal={International Journal for Numerical Methods in Engineering},
year={2022},
volume={124},
number={9},
pages={2034-2049},
publisher={Wiley Online Library}
}



%%% sparse communication pattern
@article{hoefler2010scalable,
title={Scalable communication protocols for dynamic sparse data exchange},
author={Hoefler, Torsten and Siebert, Christian and Lumsdaine, Andrew},
journal={ACM Sigplan Notices},
volume={45},
number={5},
pages={159--168},
year={2010},
publisher={ACM New York, NY, USA}
}

@article{burman2015cutfem,
title={CutFEM: discretizing geometry and partial differential equations},
author={Burman, Erik and Claus, Susanne and Hansbo, Peter and Larson, Mats G and Massing, Andr{\'e}},
journal={International Journal for Numerical Methods in Engineering},
volume={104},
number={7},
pages={472--501},
year={2015},
publisher={Wiley Online Library}
}



%-------------------------------------------------------------------------------
% References used elsewhere
%-------------------------------------------------------------------------------
Expand Down
9 changes: 8 additions & 1 deletion doc/doxygen/tutorial/tutorial.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -684,6 +684,12 @@
* <br/> Keywords: FEInterfaceValues, NonMatching::FEImmersedSurfaceValues
* </td></tr>
*
* <tr valign="top">
* <td>step-87</td>
* <td> Distributed point evaluation and applications.
* <br/> Keywords: Utilities::MPI::RemotePointEvaluation, VectorTools::point_values()
* </td></tr>
*
* </table>
*
*
Expand Down Expand Up @@ -1026,7 +1032,8 @@
* <td>
* step-60,
* step-70,
* step-85
* step-85,
* step-87
* </td>
* </tr>
*
Expand Down
5 changes: 5 additions & 0 deletions doc/news/changes/major/20230905SchreterMunch
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
New: The new tutorial step-87 presents the advanced point evaluation
functionalities of deal.II, specifically useful for evaluating
finite element solutions at arbitrary points on distributed meshes.
<br>
(Magdalena Schreter-Fleischhacker, Peter Munch, 2023/09/05)
54 changes: 54 additions & 0 deletions examples/step-87/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
##
# CMake script
##

# Set the name of the project and target:
set(TARGET "step-87")

# 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 3.13.4)

find_package(deal.II 9.6.0
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_MPI) # keep in one line
message(FATAL_ERROR "
Error! This tutorial requires a deal.II library that was configured with the following option:
DEAL_II_WITH_MPI = ON
However, the deal.II library found at ${DEAL_II_PATH} was configured with these options:
DEAL_II_WITH_MPI = ${DEAL_II_WITH_MPI}
This conflicts with the requirements."
)
endif()


deal_ii_initialize_cached_variables()
set(CLEAN_UP_FILES *.log *.gmv *.gnuplot *.gpl *.eps *.pov *.ucd *.d2 *.vtu *.pvtu)
project(${TARGET})
deal_ii_invoke_autopilot()
1 change: 1 addition & 0 deletions examples/step-87/doc/builds-on
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
step-40

0 comments on commit 2bf28f2

Please sign in to comment.