AlgebraicJulia / AlgebraicJulia/Decapodes.jl

Vector Calc. -> Exterior Calc. Docs Example

Đang mở
#261 0 bình luận 0 reaction 1 người được giao Được @lukem12345 nhận Xem trên GitHub
documentation
Ngôn ngữ chính
Julia
Star
91
Fork
18
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

Currently, we are able to convert vector calculus operations to exterior calculus operations by applying sets of heuristic rules. This is offered by DiagrammaticEquations.jl under the function [`vec_to_dec!`](https://algebraicjulia.github.io/DiagrammaticEquations.jl/dev/api/#DiagrammaticEquations.Deca.vec_to_dec!-Tuple{SummationDecapode}). These conversion rules are documented in the [Decapodes docs](https://algebraicjulia.github.io/Decapodes.jl/dev/ascii/#Vector-Calculus-Equivalents).

Although these rules are heuristics-based, we have demonstrated conversion in the DiagrammaticEquations.jl, where we test that:
- [Conversion preserves the vector calculus property that divergence of gradient is a scalar Laplacian.](https://github.com/AlgebraicJulia/DiagrammaticEquations.jl/blob/55d2972c175ad704b4991d351e2ee2e0117680f4/test/language.jl#L1352)
- [Conversion preserves the vector calculus property that curl of curl is a vector Laplacian.](https://github.com/AlgebraicJulia/DiagrammaticEquations.jl/blob/55d2972c175ad704b4991d351e2ee2e0117680f4/test/language.jl#L1361)
- [A vector calculus "advection" operator is converted to a simulatable DEC form.
](https://github.com/AlgebraicJulia/DiagrammaticEquations.jl/blob/55d2972c175ad704b4991d351e2ee2e0117680f4/test/language.jl#L1370)

Note also that we have already demonstrated examples that are already equivalent to vector calculus formulations:
- [An oncology example](https://github.com/AlgebraicJulia/Decapodes.jl/blob/main/examples/oncology/tumor_proliferation_invasion.jl)
- [Tumor "invasion" component from Yi et al. Eq. 35](https://github.com/AlgebraicJulia/Decapodes.jl/blob/f9ee003fdac3a03e9c468aca00b0e538bd28cfca/src/canon/Oncology.jl#L14)
- [Logistic growth](https://github.com/AlgebraicJulia/Decapodes.jl/blob/f9ee003fdac3a03e9c468aca00b0e538bd28cfca/src/canon/Oncology.jl#L27)
- [Gompertz growth](https://github.com/AlgebraicJulia/Decapodes.jl/blob/f9ee003fdac3a03e9c468aca00b0e538bd28cfca/src/canon/Oncology.jl#L40)
- [The Heat equation](https://github.com/AlgebraicJulia/Decapodes.jl/blob/f9ee003fdac3a03e9c468aca00b0e538bd28cfca/examples/diff_adv/heat.jl#L15)
- [The Cahn-Hilliard equation](https://algebraicjulia.github.io/Decapodes.jl/dev/ch/cahn-hilliard/)
- [The Brusselator reaction](https://github.com/AlgebraicJulia/Decapodes.jl/blob/f9ee003fdac3a03e9c468aca00b0e538bd28cfca/examples/chemistry/brusselator_teapot.jl#L22)
- [The Gray-Scott reaction](https://github.com/AlgebraicJulia/Decapodes.jl/blob/f9ee003fdac3a03e9c468aca00b0e538bd28cfca/examples/chemistry/gray_scott.jl#L25)

Although there is no guaranteed conversion from a vector calculus equation to an exterior calculus equation in general (since they often rely on surrounding context for full interpretation), we should add a compelling example for how far heuristic-based methods can go in general.

So, we should add a docs page to Decapodes that calls `vec_to_dec!`.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.