Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Discontinuous Galerkin (dG) #220

Open
wants to merge 19 commits into
base: devel
Choose a base branch
from

Conversation

int-ptr-ptr
Copy link
Collaborator

Description

Please describe the changes/features in this pull request.

This PR is the (WIP) implementation for dG / mortar method.

As of the current stage of development, we are utilizing an event system pattern, where events are queued as (function, float) pairs, which I am calling events, where the functions are called in order of increasing floating point value, effectively serving as a program with a continuous, rather than integer, program counter. The current implementation is rather bare-bones as things like interrupts and stack traces are unneeded for my purposes at the moment.

Issue Number

If there is an issue created for these changes, link it here

TODOs

  • Complete and test the different medium interfaces
    • fluid-fluid
    • fluid-solid
    • solid-solid
  • Redo the edge container
    • Somehow template edges on medium, etc. so that edge.data is not the mess that it is now
    • add ..._on_device methods
    • divorce the Kokkos views from the edge structs (edge structs could be populated by views, as in PointViewType-like structs)
    • parallelize the foreach methods -- we could keep std::function args as an ..._on_host overload, but some way of having an inline-able Kokkos function is probably necessary.
  • Improve the event system (maybe break into its own PR to work with pybind, etc?)

Checklist

Please make sure to check developer documentation on specfem docs.

  • I ran the code through pre-commit to check style
  • My code passes all the integration tests
  • I have added sufficient unittests to test my changes
  • I have added/updated documentation for the changes I am proposing
  • I have updated CMakeLists to ensure my code builds
  • My code builds across all platforms

@buildbot-princeton
Copy link
Collaborator

Can one of the admins verify this patch?

2 similar comments
@buildbot-princeton
Copy link
Collaborator

Can one of the admins verify this patch?

@buildbot-princeton
Copy link
Collaborator

Can one of the admins verify this patch?

@Rohit-Kakodkar Rohit-Kakodkar changed the base branch from main to devel December 3, 2024 18:55
+ display support
+ removals between different materials
+ writers (seismo,...) works with setup and params
+ acoustic-elastic tested vs cG
+ coupled interfaces are properly removed when setting dG
+ implemented a new algorithm for intersections; curves should work now
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants