Skip to content

Commit

Permalink
Bug correction on coorsys_cartesian
Browse files Browse the repository at this point in the history
  • Loading branch information
jfbarthelemy committed Nov 14, 2024
1 parent b25b554 commit 74e435f
Show file tree
Hide file tree
Showing 5 changed files with 6 additions and 9 deletions.
4 changes: 2 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ TimerOutputs = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f"
OMEinsum = "0.8"
Rotations = "1"
SymPy = "2"
Symbolics = "5"
Symbolics = "6"
Tensors = "1"
TimerOutputs = "0.5"
julia = "1.9, 1.10"
julia = "1.10, 1.11"

[extras]
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
Expand Down
3 changes: 1 addition & 2 deletions docs/src/tuto/nlayersphere.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

```julia
using TensND, LinearAlgebra, SymPy, Tensors, OMEinsum, Rotations
sympy.init_printing(use_unicode=true)

Spherical = coorsys_spherical()
θ, ϕ, r = getcoords(Spherical)
Expand Down Expand Up @@ -39,7 +38,7 @@ div𝛔ᵈᵉᵛ = simplify(DIV(𝛔ᵈᵉᵛ, Spherical))
eqᶿᵈᵉᵛ = factor(simplify(div𝛔ᵈᵉᵛ 𝐞ᶿ / fᶿ))
eqʳᵈᵉᵛ = factor(simplify(div𝛔ᵈᵉᵛ 𝐞ʳ / fʳ))
α, Λ = symbols("α Λ", real = true)
eqᵈᵉᵛ = factor(simplify(subs([eqᶿᵈᵉᵛ,eqʳᵈᵉᵛ], uᶿ(r) => r^α, (r) => Λ*r^α)))
eqᵈᵉᵛ = factor.(simplify.(subs.([eqᶿᵈᵉᵛ,eqʳᵈᵉᵛ], uᶿ(r) => r^α, (r) => Λ*r^α)))
αΛ = solve([eq.doit() for eq eqᵈᵉᵛ], [α, Λ])
ûᶿᵈᵉᵛ = sum([Sym("C$(i+2)") * r^αΛ[i][1] for i 1:length(αΛ)])
ûʳᵈᵉᵛ = sum([Sym("C$(i+2)") * αΛ[i][2] * r^αΛ[i][1] for i 1:length(αΛ)])
Expand Down
2 changes: 1 addition & 1 deletion scripts/Green.jl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
using TensND, LinearAlgebra, SymPy, Tensors, OMEinsum, Rotations
sympy.init_printing(use_unicode=true)
# sympy.init_printing(use_unicode=true)

Polar = coorsys_polar() ; r, θ = getcoords(Polar) ; 𝐞ʳ, 𝐞ᶿ = unitvec(Polar)
@set_coorsys Polar
Expand Down
3 changes: 1 addition & 2 deletions scripts/sphere.jl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using TensND, LinearAlgebra, SymPy, Tensors, OMEinsum, Rotations
sympy.init_printing(use_unicode=true)

Spherical = coorsys_spherical()
θ, ϕ, r = getcoords(Spherical)
Expand Down Expand Up @@ -40,7 +39,7 @@ div𝛔ᵈᵉᵛ = simplify(DIV(𝛔ᵈᵉᵛ, Spherical))
eqᶿᵈᵉᵛ = factor(simplify(div𝛔ᵈᵉᵛ 𝐞ᶿ / fᶿ))
eqʳᵈᵉᵛ = factor(simplify(div𝛔ᵈᵉᵛ 𝐞ʳ / fʳ))
α, Λ = symbols("α Λ", real = true)
eqᵈᵉᵛ = factor(simplify(subs([eqᶿᵈᵉᵛ,eqʳᵈᵉᵛ], uᶿ(r) => r^α, (r) => Λ*r^α)))
eqᵈᵉᵛ = factor.(simplify.(subs.([eqᶿᵈᵉᵛ,eqʳᵈᵉᵛ], uᶿ(r) => r^α, (r) => Λ*r^α)))
αΛ = solve([eq.doit() for eq eqᵈᵉᵛ], [α, Λ])
ûᶿᵈᵉᵛ = sum([Sym("C$(i+2)") * r^αΛ[i][1] for i 1:length(αΛ)])
ûʳᵈᵉᵛ = sum([Sym("C$(i+2)") * αΛ[i][2] * r^αΛ[i][1] for i 1:length(αΛ)])
Expand Down
3 changes: 1 addition & 2 deletions src/coorsystems.jl
Original file line number Diff line number Diff line change
Expand Up @@ -350,8 +350,7 @@ Tens.TensCanonical{1, 3, Sym, Vec{3, Sym}}
# var: (:cont,)
```
"""
function coorsys_cartesian(coords::NTuple{3,T}=symbols("x y z", real=true)) where {T<:SymType}
dim = 3
function coorsys_cartesian(coords::NTuple{dim,T}=symbols("x y z", real=true)) where {dim,T<:SymType}
𝐗, 𝐄, ℬ = init_cartesian(coords)
OM = sum([𝐗[i] * 𝐄[i] for i = 1:dim])
χᵢ = ntuple(_ -> one(eltype(coords)), dim)
Expand Down

0 comments on commit 74e435f

Please sign in to comment.