1. 13 Oct, 2020 2 commits
    • Marcus Mohr's avatar
      Refactors StokesPCGSolverOld to become dimension independent · 7d66ddc1
      Marcus Mohr authored
      Commit changes StokesPCGSolverOld so that it will work in 2D and 3D.
      By using the new VectorFunctions and Div/DivT operators the solver
      becomes agnostic implementationwise w.r.t. dimension.
      
      Commit also enhances the P2P1StokesSchurCGConvergenceTest by adding a
      test case for 3D. Convergence not fast so we currently just make five
      iterations to see that it works technically.
      
      Also renames P2P1StokesSchurCGConvergenceTest. New name is closer to
      the class name: P2P1StokesPCGSolverConvergenceTest
      7d66ddc1
    • Marcus Mohr's avatar
      e72d5a47
  2. 12 Oct, 2020 6 commits
    • Marcus Mohr's avatar
      Merge branch 'mohr/divergenceOperator-mc' into 'master' · 6da4570a
      Marcus Mohr authored
      Implements VectorToScalar and ScalarToVector operators
      
      See merge request !371
      6da4570a
    • Marcus Mohr's avatar
      ed352a63
    • Marcus Mohr's avatar
      Refactors StokesPCGSolverOld · a03a3ace
      Marcus Mohr authored
      Commit makes solver use the new div and divT operators that were added
      to the P2P1TaylorHoodStokesOperator. These replace the individual apply()
      calls on div_x and div_y etc.
      a03a3ace
    • Marcus Mohr's avatar
      Implements VectorToScalar and ScalarToVector operators · 4376e0f8
      Marcus Mohr authored
      As we now have P[12]VectorFunction objects available we should IMHO make
      more use of those to reduce code complexity in the solvers. This commit
      adds the following four new templated operators:
      
      - P1VectorToP1ScalarOperator  (-> divergence = div)
      - P1ScalarToP1VectorOperator  (-> gradient = divT)
      - P2VectorToP1ScalarOperator  (-> divergence = div)
      - P1ScalarToP2VectorOperator  (-> gradient = divT)
      
      As an example in P2VectorToP1ScalarOperator.hpp we typedef three
      divergence operators
      
      - P2ToP1ConstantDivOperator
      - P2ToP1VariableDivOperator
      - P2ToP1ElementwiseBlendingDivOperator
      
      The divergence operators get tested in a new DivergenceOperatorTest.
      
      P2ToP1ConstantDivOperator is used to replace some lines of code in
      the computations in StokesPCGSolverOld.
      
      For those operators that have no 3D implementation available, e.g.
      there is no P2ToP1BlendingDivzOperator, we also add the two dummy
      operators
      
      - P2ToP1DummyOperator
      - P1ToP2DummyOperator
      
      The P2P1TaylorHoodStokesOperator and P1StokesOperator receive
      corresponding div and divT members. This currently is in addition
      to the div_x etc. members.
      4376e0f8
    • Marcus Mohr's avatar
      Fixes signature issues in P[12]VectorFunction::interpolate() · af5f79d5
      Marcus Mohr authored
      For the case that we pass an std::vector of std::functions the
      interface of the functions was missing an & in the Point3D argument.
      Also we add const qualifier to the std::vector.
      
      The P2VectorFunctionTest now uses this variant for testing and
      source code of VTKOutputTest needed adaptation.
      af5f79d5
    • Marcus Mohr's avatar
      Merge branch 'mohr/horbach-benchmark-v5' into 'master' · ac388823
      Marcus Mohr authored
      "Horbach" benchmark
      
      See merge request !370
      ac388823
  3. 09 Oct, 2020 15 commits
  4. 07 Oct, 2020 1 commit
  5. 05 Oct, 2020 1 commit
  6. 02 Oct, 2020 5 commits
  7. 29 Sep, 2020 2 commits
  8. 28 Sep, 2020 8 commits