-
Notifications
You must be signed in to change notification settings - Fork 172
Open
Description
solve_multivar using Groebner is broken
using Symbolics
using Groebner
@variables Vpack R1 RisoP RisoN R2 R3
@variables Vadc_off Vadc_on
# RisoN || (R2+R3)
A = 1/(1/RisoN + 1/(R2+R3))
# RisoP || R1
B = 1/(1/RisoP + 1/R1)
# R3 / (R2+R3)
Vadc_ratio = R3/(R2+R3)
Vchassis_off = Vpack * (A / (RisoP + A))
Vchassis_on = Vpack * (A / (A+B))
eq1 = Vadc_off ~ Vchassis_off * Vadc_ratio
eq2 = Vadc_on ~ Vchassis_on * Vadc_ratio
symbolic_solve([eq1, eq2], (RisoP, RisoN))[ Info: Assuming (R2*RisoN + R2*RisoP + R3*RisoN + R3*RisoP + RisoN*RisoP) != 0
[ Info: Assuming (R1*R2*RisoN + R1*R2*RisoP + R1*R3*RisoN + R1*R3*RisoP + R1*RisoN*RisoP + R2*RisoN*RisoP + R3*RisoN*RisoP) != 0
ERROR: LoadError: "Groebner bases engine is required. Execute `using Groebner` to enable this functionality."
Stacktrace:
[1] solve_multivar(eqs::Vector{Num}, vars::Tuple{Num, Num}; dropmultiplicity::Bool, warns::Bool)
@ Symbolics ~/.julia/packages/Symbolics/GYV9b/src/solver/main.jl:326
[2] symbolic_solve(expr::Vector{Equation}, x::Tuple{Num, Num}; dropmultiplicity::Bool, warns::Bool)
@ Symbolics ~/.julia/packages/Symbolics/GYV9b/src/solver/main.jl:204
[3] symbolic_solve(expr::Vector{Equation}, x::Tuple{Num, Num})
@ Symbolics ~/.julia/packages/Symbolics/GYV9b/src/solver/main.jl:145
[4] top-level scope
@ ~/Code/Tethers.jl/mwes/mwe06.jl:20
[5] include(fname::String)
@ Base.MainInclude ./client.jl:494
[6] top-level scope
@ REPL[1]:1 [0c5d862f] Symbolics v6.21.0
Metadata
Metadata
Assignees
Labels
No labels