Skip to content
Snippets Groups Projects
  1. Mar 08, 2025
    • Sander, Oliver's avatar
      Bind LocalGFEFunctions to elements · e2434bfd
      Sander, Oliver authored
      ... instead of binding to LocalFiniteElement objects.
      
      This is how binding works everywhere else, too.  In addition,
      in frees us from the difficult task to always get the
      appropriate LocalFiniteElement objects to bind to.
      e2434bfd
  2. Mar 07, 2025
  3. Jan 17, 2025
  4. Jul 06, 2024
  5. Mar 24, 2024
  6. Feb 07, 2024
    • Sander, Oliver's avatar
      Make LocalEnergy a non-variadic template · 00394b7a
      Sander, Oliver authored
      Previously, LocalEnergy would accept an arbitrary number of
      template arguments, and (with the exception of the first one)
      they would be interpreted as the factors of a product target space.
      This patch replaces this template list by a single template
      parameter, which has to be ProductManifold if a product space
      is desired.
      
      This has implications throughout the code.  In particular, there are
      now two energy methods: One that still accepts coefficients sets
      in the form
      
        std::vector<TargetSpace>
      
      and a second one which accepts
      
        TupleVector<std::vector<Factors>...>
      
      The second one really only makes sense for product manifolds.
      However, as the 'energy' methods are pure virtual, they cannot be
      disabled by SFINAE or C++20 concepts.  Therefore, the second 'energy'
      method exists always, accepting
      
        TupleVector<std::vector<TargetSpace> >
      
      if TargetSpace is not a product.
      00394b7a
  7. 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
  8. Jan 05, 2024
  9. Oct 27, 2023
  10. May 24, 2023
  11. Oct 05, 2022
  12. Jul 11, 2022
  13. Nov 09, 2021
  14. Nov 20, 2020
    • Sander, Oliver's avatar
      Support rod discretizations of any order · 3fd15b9e
      Sander, Oliver authored
      So far, the Cosserat rod energy implementation hat a first-order
      finite element space hardcoded.  This patch removes that restriction.
      As for the other models in this Dune module, the finite element basis
      is now a template parameter of the model energy, and can be set to
      any reasonable basis.
      3fd15b9e
    • Sander, Oliver's avatar
      Rename RodLocalStiffness to Dune::GFE::CosseratRodEnergy · 2c5aa41d
      Sander, Oliver authored
      It is not a 'stiffness' anymore, but really only implements the
      energy.
      2c5aa41d
    • Sander, Oliver's avatar
      Use ADOL-C for derivatives of the rod energy · da55ad7a
      Sander, Oliver authored
      Previously, the rod3d code used a hand-implemented first derivative
      of the rod energy, and FD for the second derivatives.  This patch
      replaces this by ADOL-C for both first and second derivatives.
      Advantages are:
      * The code is much shorter, and easier to understand.
      * The previous code contained interpolation formulae for
        first-order 1d geodesic finite elements.  This restricted
        rod problems to first-order GFE.  A follow-up patch will
        allow higher-order approximations.
      * The new code runs roughly twice as fast.
      da55ad7a
    • Sander, Oliver's avatar
      Move all rod stress and strain methods to local energy implementation · ac686e40
      Sander, Oliver authored
      As a first step towards getting rid of the RodAssembler class,
      this patch moves the getStrain, getStress, and getResultantForce
      methods to the RodLocalStiffness class.  I am not 100% convinced
      that that is the best place for them, but I can't think of a
      better one right now.
      ac686e40
  15. Jun 23, 2019
  16. Jun 14, 2019
  17. May 17, 2019
  18. Sep 06, 2018
  19. May 11, 2018
  20. Feb 19, 2018
  21. Jan 30, 2016
  22. Oct 18, 2015
  23. Oct 16, 2015
  24. Mar 23, 2015
  25. Dec 08, 2014
  26. Jan 04, 2012
  27. Nov 15, 2011
  28. Nov 12, 2011
Loading