Skip to content
Snippets Groups Projects
  1. Dec 19, 2019
  2. Oct 21, 2019
  3. Oct 19, 2019
  4. Oct 18, 2019
  5. Oct 17, 2019
  6. Oct 16, 2019
    • Henrik Stolzmann's avatar
      Added a new quadraturetype. · 2215e4b4
      Henrik Stolzmann authored
      `GaussJacobi_n_0` is a quadrature type that respects the weight function resulting from conical product.
      The rules use already existing quadrature rules compatible with various types
      and if the desired order or dimension is too high new rules are computed on demand.
      This case requires `LAPACK` and a floating point number type.
      
      The rules currently have an arbitrary "maximal" order of 127. This upper limit is imposed by technical issues.
      2215e4b4
  7. Sep 03, 2019
    • Oliver Sander's avatar
      [!126] Make tolerances in checkGeometry depending on ctype · f2d76472
      Oliver Sander authored
      Merge branch 'issue/check_geometry_tolerances' into 'master'
      
      ref:core/dune-geometry
      
      ### Summary
      
      Replaces fixed tolerances 1.e-8 with ctype dependent tolerance
      
      ### Details
      
      Tests with geometries using float as ctype may fail to reach the desired fixed
      tolerance 1.e-8. This is corrected by using the
      tolerance=sqrt(numeric_limits<ctype>::epsilon()) value. This value gives
      approximately
      
      -   `tolerance<double> = 1.5e-8` and
      -   `tolerance<float> = 3.5e-4`
      
      and thus previous test runs with ctype=double should also pass the test with
      this change.
      
      See merge request [!126]
      
        [!126]: gitlab.dune-project.org/core/dune-geometry/merge_requests/126
      f2d76472
    • Simon Praetorius's avatar
  8. Jun 19, 2019
    • Ansgar Burchardt's avatar
      [!124] remove unused local variable `v` · acb8e429
      Ansgar Burchardt authored
      Merge branch 'remove-unused-variable-v' into 'master'
      
      ref:core/dune-geometry This addresses the following warning from GCC 9:
      
          dune-geometry/dune/geometry/refinement/simplex.cc:741:21:
          warning: unused variable ‘v’ [-Wunused-variable]
      
      See merge request [!124]
      
        [!124]: gitlab.dune-project.org/core/dune-geometry/merge_requests/124
      acb8e429
    • Ansgar Burchardt's avatar
      remove unused local variable `v` · f68b8a6d
      Ansgar Burchardt authored
      This addresses the following warning from GCC 9:
      
          dune-geometry/dune/geometry/refinement/simplex.cc:741:21:
          warning: unused variable ‘v’ [-Wunused-variable]
      Verified
      f68b8a6d
  9. Jun 01, 2019
  10. Mar 19, 2019
  11. Mar 06, 2019
  12. Mar 05, 2019
  13. Jan 14, 2019
  14. Dec 17, 2018
    • Jö Fahlke's avatar
      [!119] Narrow compiler/options for skipping testcornerstoragerefwrap · 253af83f
      Jö Fahlke authored
      Merge branch 'narrow-testskip-to-bad-config' into 'master'
      
      ref:core/dune-geometry We now only skip if
      
      -   The compiler is gcc 8.2.\*
      -   The compile options include -ftree-loop-vectorize (possibly implicitly due
          to -O3)
      
      We also complain loudly during cmake configure run, as this issue might
      miscompile other code than just the test.
      
      Closes: [#19], [#21]
      
      See merge request [!119]
      
        [#19]: gitlab.dune-project.org/NoneNone/issues/19
        [#21]: gitlab.dune-project.org/NoneNone/issues/21
        [!119]: gitlab.dune-project.org/core/dune-geometry/merge_requests/119
      
      
      Closes #19 and #21
      253af83f
    • Jö Fahlke's avatar
      Consider build-type when checking for bad optimization options · 0d09c4b0
      Jö Fahlke authored
      For single build-type generators such as unix make files check
      CMAKE_CXX_FLAGS_<CONFIG> in addition CMAKE_CXX_FLAGS.  This is equivalent to
      just CMAKE_CXX_FLAGS if not build-type is selected.  For multi-configuration
      generators, check each configuration, and skip the test is any of them is bad.
      
      I'd like to skip it only for the bad configs, but that would require generator
      expression support in dune_add_test(CMAKE_GUARD ...).
      0d09c4b0
  15. Dec 14, 2018
  16. Dec 06, 2018
    • Carsten Gräser's avatar
      [!116] [doc] Mention referenceElement.subEntity() in changelog · 92165eda
      Carsten Gräser authored
      Merge branch 'feature/update-changelog' into 'master'
      
      See merge request [!116]
      
        [!116]: Nonecore/dune-geometry/merge_requests/116
      92165eda
    • Carsten Gräser's avatar
    • Steffen Müthing's avatar
      [!94] Add ReferenceElement::subEntities() method returning a range · d721f3b8
      Steffen Müthing authored
      Merge branch 'feature/re-subentities-range' into 'master'
      
      For a reference element re the call
      
            re.subEntity(i,codim,j,c);
      
      returns the index (wrt re) of the j-th sub-subentity of codim (wrt re) c of
      the subentity (i,codim). This allows e.g. to access all vertices of a face.
      However, there's a big problem with this method:
      
      It is often misinterpreted by users that the passed index j is the index of
      one grid-subentity within another grid-subentity. To be more precise it is
      assumed that the subEntity() methods of the reference element and a grid
      element are consistent with each other. Unfortunately this is in general not
      true because it is impossible to construct such an consistent subentity
      embedding for any grid. As a consequence both may provide a different
      embedding and the index j is essentially useless despite allowing to iterate
      over all such subentities using
      
          // Don't use j directly in such a loop, it's very likely that
          // your assumptions on the meaning of j don't hold true!
          for(std::size_t j=0; j<re.size(i,codim,c); ++j)
            foo(re.subEntity(i,codim,j,c));
      
      While the behaviour is documented, users repeatedly fall into this trap and
      the issue is discussed on the list once in a while.
      
      As a remedy this introduces a new method ReferenceElement::subEntities()
      returning all the subentities as an iterable range. The actual type of this
      range is implementation defined. Using this the above loop turns into:
      
          // No j here!
          for(auto k : re.subEntities(i,codim,c))
            foo(k);
      
      This is not only more readable, but it especially avoids misinterpreting the
      'index' j. You can still run into the trap on purpose by assuming a special
      ordering of the range. But this is very unlikely and you have to take special
      action to construct the index j.
      
      This MR is based on [!93] (contains) because it consistently tests for all
      codim/c combinations. But one could also restrict the allowed cases to
      c>=codim here. In a later stage we may want to deprecate the error prone
      subEntity() method.
      
      Side note: Thanks to the implementer (@martin.nolte?) of the reference
      elements for caching those numbers in a consecutive way. Implementing this
      feature just amounts into wrapping pointers into the cache in a
      Dune::IteratorRange. However, I'd even more like to put them into gsl:span.
      
      See merge request [!94]
      
        [!93]: gitlab.dune-project.org/NoneNone/merge_requests/93
        [!94]: gitlab.dune-project.org/core/dune-geometry/merge_requests/94
      d721f3b8
    • Carsten Gräser's avatar
      Implement exact upper bound for number of subentities · 86542ec1
      Carsten Gräser authored
      While I'm not aware of an explicit formular (feel free to
      provide/prove one), a constexpr function computing the
      max works nicely here.
      86542ec1
    • Steffen Müthing's avatar
      [!115] Centralize CI configuration · 57c3019b
      Steffen Müthing authored
      Merge branch 'ci/centralize-config' into 'master'
      
      See merge request [!115]
      
        [!115]: Nonecore/dune-geometry/merge_requests/115
      57c3019b
    • Carsten Gräser's avatar
      Add contains() and size() method to subentity range · fca01008
      Carsten Gräser authored
      Now the index range returned from referenceElement.subEntities(i,codim,c)
      is not just iterable but also provides the methods size() and contains().
      This is not just for convenience:
      
      It's a common use case of this method (e.g. when determining boundary DOFs),
      to check if a faced contains the subentities associated to DOFs. Until know
      you always had to loop over the range provided by referenceelement.subEntity()
      and compare resulting indices. Now you can use the contains() method
      which just looks up the result in a table.
      
      Design decision:
      The per-codim look-up is implemented using a std::bitset<K> with
      K=3^dim as upper bound for the per-codim subentity count. While
      this is pessipistic, it's much cheaper than any dynamic version
      for dim<=4. Feel free to add a better upper bound for larger dimensions.
      fca01008
    • Steffen Müthing's avatar
      [ci] Centralize CI configuration · a7185229
      Steffen Müthing authored
      a7185229
  17. Nov 23, 2018
Loading