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

System Transformation - Automatically make PDESystems compatible #168

Merged
merged 71 commits into from
Oct 31, 2022

Conversation

xtalax
Copy link
Member

@xtalax xtalax commented Oct 4, 2022

Allows

  • Mixed derivatives
  • Composite derivative arguments
  • Time agnostic BC/IC parsing
  • More free choice of ic equation structure
  • Arbitrary order time derivatives
  • Expandable derivative terms in equations
  • Use ODAEProblem where appropriate

pde_system_tranformation.jl is where the meat of this happens

@xtalax
Copy link
Member Author

xtalax commented Oct 11, 2022

@ChrisRackauckas Ok, this is actually "working" in that it's correctly transforming the system and adding the right new equations, but it's making solve time oppressively long.

I'm testing on periodic Dt(u) ~ Dxy(u), but this is unstable even with WENO and sensibly short timesteps. Can you suggest a better system to test?

@codecov
Copy link

codecov bot commented Oct 24, 2022

Codecov Report

Merging #168 (cd7d172) into master (81de83c) will increase coverage by 24.64%.
The diff coverage is 83.61%.

@@             Coverage Diff             @@
##           master     #168       +/-   ##
===========================================
+ Coverage   61.89%   86.53%   +24.64%     
===========================================
  Files          31       33        +2     
  Lines        1412     1664      +252     
===========================================
+ Hits          874     1440      +566     
+ Misses        538      224      -314     
Impacted Files Coverage Δ
...discretization/generate_finite_difference_rules.jl 90.90% <0.00%> (+18.18%) ⬆️
...hemes/centered_difference/centered_diff_weights.jl 100.00% <ø> (+50.00%) ⬆️
src/discretization/schemes/half_offset_weights.jl 100.00% <ø> (+48.64%) ⬆️
...n/schemes/upwind_difference/upwind_diff_weights.jl 97.29% <ø> (+48.64%) ⬆️
src/MOL_utils.jl 72.88% <40.00%> (-5.14%) ⬇️
src/discretization/generate_bc_eqs.jl 82.96% <50.00%> (+28.88%) ⬆️
src/interface/solution/timedep.jl 85.29% <71.42%> (+11.96%) ⬆️
src/system_parsing/variable_map.jl 83.87% <83.87%> (ø)
src/discretization/discretize_vars.jl 86.90% <84.37%> (+9.12%) ⬆️
src/MOL_discretization.jl 74.45% <86.79%> (+12.73%) ⬆️
... and 33 more

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@xtalax
Copy link
Member Author

xtalax commented Oct 31, 2022

CI failures work locally, merging to get on with other stuff

@xtalax xtalax merged commit fabb12b into SciML:master Oct 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants