Skip to content
Snippets Groups Projects
  1. Nov 12, 2024
  2. Nov 05, 2024
  3. Sep 06, 2024
    • Sander, Oliver's avatar
      Remove geodesicfeassemblerwrappertest.cc · 7d171af4
      Sander, Oliver authored
      The test used CosseratEnergyLocalStiffness, which I am in the
      process of getting rid of.  And since I eventually want to
      get rid of GeodesicFEAssemblerWrapper too, it is not worth the time
      to port the test.
      7d171af4
  4. Sep 01, 2024
    • Sander, Oliver's avatar
      Remove cosseratenergytest.cc · c2dcf521
      Sander, Oliver authored
      * I did not really test a lot of useful stuff.
      * The class CosseratLocalEnergyStiffness is deprecated anyway.
      * It stopped compiling and I don't know why.
      c2dcf521
  5. Aug 28, 2024
  6. Jul 11, 2024
    • Sander, Oliver's avatar
      A unit test for InterpolationDerivatives · 3ff0de8c
      Sander, Oliver authored
      3ff0de8c
    • Lisa Julia Nebel's avatar
      Add LocalIntegralStiffness class with a test · ab09c587
      Lisa Julia Nebel authored and Sander, Oliver's avatar Sander, Oliver committed
      The LocalIntegralStiffness assembles a tangent matrix by
      suitably combining derivatives of the energy density with
      derivatives of the geometric FE interpolation.  See the
      detailed description in dune-gfe-manual.pdf.
      
      This patch also includes a new test in localintegralstiffnesstest.cc.
      It checks if the assembled matrix is the same as the one computed
      by LocalGeodesicFEADOLCStiffness.
      
      For a 3d Cosserat material I get a speedup of about 3x.
      ab09c587
  7. Jun 23, 2024
    • Sander, Oliver's avatar
      Fix LocalIntegralEnergy for nonconforming discretizations · 1f5c6c83
      Sander, Oliver authored
      This broke recently (or never worked), because nonconforming
      discretizations were not tested anywhere.  This patch therefore
      also generalizes harmonicmaptest to also test with a
      nonconforming discretization.
      
      As part of the fix, the interpolation rules get a new method
      `evaluateValueAndDerivative`, because the previous way to get
      the value and the derivative in a single call (the `evaluateDerivative`
      method that takes a value as an argument) only worked for the
      conforming case.
      1f5c6c83
  8. Apr 16, 2024
  9. Apr 05, 2024
  10. Mar 25, 2024
    • Lisa Julia Nebel's avatar
      Add a MixedRiemannianPNSolver · 9cdb73e4
      Lisa Julia Nebel authored and Sander, Oliver's avatar Sander, Oliver committed
      The MixedRiemannianPNSolver can assemble when different finite element
      spaces are used for deformations and rotations (in, e.g., a Cosserat
      model).  CHOLMOD is used for the inner solver.
      
      This can be much faster than the MixedRiemannianTRSolver.
      9cdb73e4
    • Sander, Oliver's avatar
      Test filmonsubstratetest even when there is no dune-parmg · d8965ca1
      Sander, Oliver authored
      Previously this wouldn't compile, because GlobalP2Mapper only supported
      1d and 2d grids when used without dune-parmg.  This has now been fixed,
      so we can enable filmonsubstratetest and filmonsubstratetest-mixed
      (which involve a 3d grid) also for the situation without dune-parmg.
      
      Strangely, the test without the -mixed produces different results
      depending on whether the dune-parmg version of GlobalP2Mapper is used
      or not. Minor differences are to be expected because the precise
      behavior of multigrid methods (which are used by the TR solver) depends
      on the dof ordering.  But the difference seen here is a bit large
      for my taste.
      
      I don't quite understand this, so this commit introduces some
      subcasing to make CI pass, and document the current behavior.
      d8965ca1
    • Sander, Oliver's avatar
      Increase TIMEOUT for harmonicmaptest and cosseratcontinuumtest.cc · 78cc500c
      Sander, Oliver authored
      These tests have started to time out. I have no idea why.
      78cc500c
  11. Mar 24, 2024
  12. Mar 19, 2024
    • Sander, Oliver's avatar
      Use LocalIntegralEnergy to implement harmonic maps problems · 5fd88ecc
      Sander, Oliver authored
      This replaces the dedicated implementation of the quadrature loop
      for harmonic energies -- that is not needed anymore.
      
      In particular this means that the test for it can be removed.
      In theory it should be replaced with a test for the harmonic
      energy *density*, but that density implementation is so short
      that it doesn't really require a separate test.
      5fd88ecc
    • Sander, Oliver's avatar
      A unit test for a coupled bulk-shell model · ba7a411e
      Sander, Oliver authored
      Together with the new test, this commit also contains a number
      of fixes for the SurfaceCosseratEnergy class.  This class was
      not unit-tested previously, and unintentionally I messed it up
      badly during my recent modernization work.
      
      Finally, SurfaceCosseratEnergy had apparently never been tested
      without dune-curvedgeometry, which is however only an optional
      dependency.  The commit therefore also adds the necessary
      conditionals.
      
      Then problem then is that the derivative of the outer normal
      of an intersection is not available from the standard grid interface.
      If dune-curvedgeometry is not available, this derivative is
      simply set to a zero matrix.  Depending on the grid manager
      this may not actually be correct, though.
      ba7a411e
  13. Feb 07, 2024
    • Sander, Oliver's avatar
      Remove adolctest-scalar-and-vector-mode.cc · b2353f27
      Sander, Oliver authored
      ADOL-C can compute all derivatives with two different modes:
      scalar- and vector mode.  In theory they should produce exactly
      the same results, but sometimes there are bugs (I have found
      a few of those myself).  adolctest-scalar-and-vector-mode tested
      whether the two modes produced the same result for a particular
      Cosserat configuration.
      
      I do not think that dune-gfe is the right place for such a test.
      It tests for bugs in ADOL-C itself, and that is the job of
      ADOL-C's own test suite.  Consequently, I am removing the test.
      b2353f27
  14. Jan 15, 2024
    • Sander, Oliver's avatar
      Replace RigidBodyMotion by ProductManifold · 25239378
      Sander, Oliver authored
      The ProductManifold class generalizes RigidBodyMotion, and can do
      everything that the RigidBodyMotion class can.  Therefore there is
      no point in keeping RigidBodyMotion any longer.  Having two
      implementations for the same thing will just confuse people.
      25239378
  15. Jan 02, 2024
    • Sander, Oliver's avatar
      Reenable cosseratrodtest · 5d2f5adc
      Sander, Oliver authored
      Previously, the test mysteriously failed on the CI system, but not locally.
      I recently tried again and the CI test passed again.  I don't understand
      what was going on, but for the time being let's enable the test again.
      5d2f5adc
  16. Nov 23, 2023
  17. Nov 21, 2023
  18. May 22, 2023
    • Sander, Oliver's avatar
      Disable cosseratrodtest · 42686a3f
      Sander, Oliver authored
      It run-time fails on the CI system for unknown reasons.
      I don't currently have the time to spend more time debugging this.
      Therefore, this patch simply disables the test and leaves a note.
      42686a3f
  19. May 16, 2023
  20. Mar 11, 2023
  21. Jan 22, 2022
    • Lisa Julia Nebel's avatar
      Move the polar decomposition to a separate file and add the algorithm by... · be93c8bd
      Lisa Julia Nebel authored
      Move the polar decomposition to a separate file and add the algorithm by Higham and Noferini (from Robin Fraenzel)
      
      In the test for the Higham and Noferini algorithm, we see:
      Unfortunately, for matrices that are close to an orthogonal matrix, this algorithm is
      about 2x slower. One can benefit from the Higham and Noferini algorithm only if the
      matrix is quite far away from an orthogonal one.
      be93c8bd
  22. Nov 16, 2021
  23. Jul 09, 2021
  24. Jul 02, 2021
  25. Feb 16, 2021
  26. Feb 08, 2021
  27. Jan 19, 2021
  28. Nov 20, 2020
  29. Oct 12, 2020
  30. Sep 24, 2020
    • Lisa Julia Nebel's avatar
      Add a GeodesicFEAssemblerWrapper - it wraps a MixedGFEAssembler so it can be... · aa03e106
      Lisa Julia Nebel authored
      Add a GeodesicFEAssemblerWrapper - it wraps a MixedGFEAssembler so it can be used like a GeodesicFEAssembler
      
      The GeodesicFEAssemblerWrapper assembles the Gradient and the Hessian using the MixedGFEAssembler and then
      resturctures them so they can be used with the normal RiemannianTRSolver.
      This only works, if the FE spaces have the same order.
      aa03e106
  31. Jan 29, 2020
  32. Jan 19, 2020
    • Sander, Oliver's avatar
      Delete the class GlobalGFETestFunction · 18b28b45
      Sander, Oliver authored
      I wrote it without a clear idea of what is needed of such a
      test function, and I never finished it.  Now it is unclear
      what the code does or is supposed to do, so let's just
      remove it.
      18b28b45
  33. Oct 21, 2019
    • Sander, Oliver's avatar
      New test for the RigidBodyMotion class · dde70eb7
      Sander, Oliver authored
      In particular, we move the test for the computeDR method from
      cosseratenergytest.cc to here.  It is a method that does not
      have anything to do with Cosserat mechanics directly.
      
      The test still seems overly complicated.  Do I really need
      a LocalGeodesicFEFunction?  Maybe I can simplify it later.
      dde70eb7
  34. Jul 09, 2019
Loading