Skip to content
Snippets Groups Projects
  1. Mar 10, 2023
  2. Jul 11, 2022
  3. Sep 03, 2020
  4. May 20, 2020
  5. Jun 16, 2019
    • Sander, Oliver's avatar
      Introduce a base class for local energies · c250302c
      Sander, Oliver authored
      Currently, all implementations of variational problems inherit
      from LocalGeodesicFEStiffness, which requires gradient and Hessian
      implementations.  However, most of these implementations really
      only implement the energy, and leave computations of first and
      second derivatives to algorithmic differentiation.  To make
      this clearer, this patch introduces an abstract base class
      LocalEnergy for all implementations that really only have
      an energy.
      c250302c
  6. May 17, 2019
  7. Dec 27, 2015
  8. Nov 20, 2015
  9. Mar 23, 2015
  10. Mar 18, 2015
  11. Feb 12, 2015
  12. Jul 09, 2014
    • Oliver Sander's avatar
      Use the vectors of the orthonormal frame as directions in hess_mat · da2e2a79
      Oliver Sander authored
      Previously we called hess_mat (vector-mode second derivatives) with the
      canonical basis vectors, and then rotated the resulting matrix.
      This is wasteful, as more directions are used than necessary.
      This patch uses the minimal number of directions.
      
      [[Imported from SVN: r9818]]
      da2e2a79
  13. Jul 03, 2014
    • Oliver Sander's avatar
      Implement vector-mode AD for the Hesse matrix · 924813d5
      Oliver Sander authored
      This almost halves the assembly time for the Hesse matrix.  Nice!
      Nevertheless I still keep the scalar-mode code around, hidden
      behind and #ifdef.  Higher-order vector-mode in ADOL-C appears
      to be not quite as reliable as the rest, so I want to be able to
      easily compare results with the scalar code.
      
      Also, unlike the scalar code, the vector-mode one again computes
      the full Hessian in the surrounding Euclidean space.  Only afterwards,
      that full Hessian is multiplied by the tangent space basis vectors
      to obtain a Hesse matrix on the tangent space.  To obtain better
      efficiency one could have ADOL-C compute the Hessian in the tangent
      directions directly.  However, ADOL-C sometimes segfaults... when
      doing that.
      
      [[Imported from SVN: r9815]]
      924813d5
  14. Jun 17, 2014
  15. Jun 13, 2014
    • Oliver Sander's avatar
      Do not use the 'hessian' driver of ADOL-C to compute the Hessian · 0a20cfb8
      Oliver Sander authored
      Instead, only let ADOL-C evaluate the Hessian in the directions
      of the vectors of the orthonormal frames.  The result is the same,
      but we get away with fewer calls to ADOL-C, which, in my Cosserat
      shell example, shaves off about 10% of the assembly time.
      
      [[Imported from SVN: r9779]]
      0a20cfb8
  16. Dec 09, 2013
  17. Dec 08, 2013
  18. Dec 03, 2013
  19. Sep 30, 2013
  20. Sep 03, 2013
Loading