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

Boundary Conditions as Collage-Decapodes #151

Closed
wants to merge 17 commits into from
Closed

Conversation

lukem12345
Copy link
Member

@lukem12345 lukem12345 commented Oct 9, 2023

Closes #144

With @p-stokes , this branch will encode boundary conditions and initial conditions as morphisms between Decapode diagrams.

One Decapode represents the physical equations, and the other represents values to set along boundaries.

TODO:

  • Add docs page
  • Pass simple masking test with a discrete boundary Decapode
  • Initial conditions

Pass masking test where a Var in the discrete Decapode is computed from other vars in that Decapode.

  • This feature is "extra", and so lies out of the scope of this PR.

@codecov
Copy link

codecov bot commented Oct 9, 2023

Codecov Report

Attention: 1 lines in your changes are missing coverage. Please review.

Comparison is base (3395d01) 75.17% compared to head (6de2efd) 76.13%.

❗ Current head 6de2efd differs from pull request most recent head c3c9e3a. Consider uploading reports for the commit c3c9e3a to get more accurate results

Files Patch % Lines
src/simulation.jl 93.33% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #151      +/-   ##
==========================================
+ Coverage   75.17%   76.13%   +0.96%     
==========================================
  Files          11       10       -1     
  Lines        1172     1207      +35     
==========================================
+ Hits          881      919      +38     
+ Misses        291      288       -3     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@lukem12345
Copy link
Member Author

The collate function as of the most recent commit is correct for boundary masks applied to state variables or tangent variables.

@lukem12345 lukem12345 marked this pull request as ready for review October 27, 2023 19:24
@lukem12345
Copy link
Member Author

I have marked this PR as "ready for review" since the source code and tests are complete (up to passing the review stage). So, the code and tests themselves are ready to review as I concurrently write the docs and example scripts to accompany this new feature set.
@jpfairbanks @p-stokes

@jpfairbanks
Copy link
Member

Sadly this didn't get merged before the component-arraypocalypse. so it needs to be brought up to date (@lukem12345). There are also merge conflicts now.

@lukem12345
Copy link
Member Author

Disadvantage to not using findnode as a thin wrapper around getfield, but such is git.

@lukem12345
Copy link
Member Author

What are your thoughts on the docs page. Good enough for merge? The accompanying demo is the so-called brusselator_bounded.jl example. @jpfairbanks

@lukem12345
Copy link
Member Author

DiagrammaticEquations.jl has the collage source and test code now, so this PR is closed by that repo!

@lukem12345 lukem12345 closed this Jan 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add support for boundary conditions as Decapode Morphisms
2 participants