Skip to content
Snippets Groups Projects
  1. Sep 20, 2018
  2. Jun 19, 2018
  3. May 11, 2018
    • Sander, Oliver's avatar
      Use Newton instead of Trust-Region for the Geodesic FE min problems · bd02d57d
      Sander, Oliver authored
      In theory this is dangerous, because a pure Newton method will
      only converge locally.  However, the trust-region part had been
      partially disabled anyway, and I have not noticed any problems.
      Also, I think that from my well-posedness result for higher-order
      GeoFEs follows that a Newton method will always converge if the
      problem is well-posed (that is how the proof works, after all).
      
      On the plus side, this patch brings roughly 5% speed increas.
      bd02d57d
  4. Dec 29, 2015
    • Sander, Oliver's avatar
      Introduce a dedicated class LocalQuickAndDirtyFEFunction to produce initial... · a617d51f
      Sander, Oliver authored
      Introduce a dedicated class LocalQuickAndDirtyFEFunction to produce initial iterates for the GFE minimization problems
      
      Previously, a LocalProjectedFEFunction was used for this.  This turned out to be a bad idea for two reasons:
      - Evaluating such a function can actually pretty expensive.  For example,
        to project onto SO(3), the polar decomposition needs to be evaluated by
        an iterative method.
      - Screwing up the LocalProjectedFEFunction implementation can actually screw up
        the GFE implementation as well in very subtle ways.  Specifically, if the
        LocalProjectedFEFunction is not ADOL-C-differentiable, then the GFE function
        will not be differentiable, either.  This fact cost me a few hours searching...
      a617d51f
  5. Nov 27, 2015
  6. Oct 18, 2015
  7. Oct 04, 2015
  8. Feb 06, 2015
  9. Aug 18, 2014
  10. Jul 17, 2014
  11. Jul 03, 2014
  12. Apr 23, 2014
    • Oliver Sander's avatar
      Hand-code one specific matrix-matrix multiplication · 28674731
      Oliver Sander authored
      This has two advantages:
      - The two matrices use different number types (adouble vs. double),
        but the generic multiplication in dune/istl/matrix.hh doesn't support
        that.  Hence before this change I had to patch dune-istl.
      - It avoids one extra copying operation
      
      [[Imported from SVN: r9703]]
      28674731
  13. Mar 24, 2014
    • Oliver Sander's avatar
      Use a better initial iterate for the TargetSpaceTRSolver than coefficients_[0] · e6dca29a
      Oliver Sander authored
      The new initial iterate is constructed by interpolating the values in Euclidean
      space, and projecting back onto TargetSpace.  This has two advantages:
      1) It's a better initial iterate, so we should converge faster than starting
         from coefficients_[0]
      2) It makes it easier for ADOL-C to pick up correct second derivatives.
         Hence we are able to reduce the minimum number of iterations of the
         target space tr solver.
      
      [[Imported from SVN: r9683]]
      e6dca29a
  14. Dec 13, 2013
  15. Sep 03, 2013
  16. Jul 12, 2013
  17. Jul 11, 2013
  18. Mar 08, 2012
  19. Feb 15, 2012
  20. Jan 12, 2012
  21. Jan 11, 2012
    • Oliver Sander's avatar
      Add a second method evaluateDerivative which accepts the function value as input. · 9ec5de08
      Oliver Sander authored
      To compute the derivative you need the function value (see my paper).
      Therefore, it is computed as the first thing in the evaluateDerivative
      method.  However, frequently, the assembler also needs the function value,
      and also computes it.  Hence the function value is computed twice.
      Since computing the function values takes quite a bit of time
      this patch removes that redundancy, at the price of a slightly
      more complicated API: if you happen to know the correct function
      value when calling evaluateDerivative, you can now hand over the
      value.  Then evaluateDerivative uses that value instead of recomputing it.
      
      Short measurements have shown a speed increase between 25% and 45%.
      
      [[Imported from SVN: r8362]]
      9ec5de08
  22. Nov 15, 2011
  23. Nov 12, 2011
  24. Oct 27, 2011
  25. Oct 26, 2011
  26. Oct 25, 2011
  27. Oct 24, 2011
  28. Oct 19, 2011
Loading