Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • hyteg hyteg
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 54
    • Issues 54
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 8
    • Merge requests 8
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • hyteg
  • hyteghyteg
  • Merge requests
  • !599

Handle edge orientations systematically by basis transformations

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged Daniel Bauer requested to merge bauerd/n1e1-orientations into master May 15, 2023
  • Overview 0
  • Commits 6
  • Pipelines 3
  • Changes 31

The rationale behind this MR is detailed in https://i10git.cs.fau.de/terraneo/hhg_doku/-/blob/master/P3Function_thoughts/orientations.tex. This MR implements the proposed approach for the N1E1 space.

TL;DR

I spent some time thinking about how to handle orientation of mesh entities and how to implement that in HyTeG having the general case in mind. The conclusion is that we should perform basis transformations during communication. More details about these transforms are given in [1]. As a result only two parts in HyTeG require care: the communication (PackInfo) and the matrix assembly. The goal is to have both generated automatically.

Some Notes

  • N1E1 forms do not depend on edge directions any more. The reason why this was introduced initially was confusion on my side about the difference between matrix diagonals and linear forms.
  • Assembly of linear forms is now a free function (for N1E1) and the Operator is not defined for linear forms anymore. I am open to discussions about this.

Related

https://i10git.cs.fau.de/terraneo/hyteg-form-generator/-/merge_requests/30

[1] M. W. Scroggs, J. S. Dokken, C. N. Richardson, and G. N. Wells, “Construction of Arbitrary Order Finite Element Degree-of-Freedom Maps on Polygonal and Polyhedral Cell Meshes,” ACM Trans. Math. Softw., vol. 48, no. 2, pp. 1–23, Jun. 2022, doi: 10.1145/3524456.

Edited May 15, 2023 by Daniel Bauer
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: bauerd/n1e1-orientations