AlgebraicJulia / AlgebraicJulia/Decapodes.jl
Vector Calc. -> Exterior Calc. Docs Example
- 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á.