syms to another .m file

1 次查看(过去 30 天)
How do you export your syms equation to a new/different .m file to be able to use the equation with parameters.

采纳的回答

Walter Roberson
Walter Roberson 2025-2-22
As @Torsten says, you can just pass symbolic expressions as parameters.
However, you need to be careful about assumptions. All levels of MATLAB code share the same assumptions, and using syms on a variable resets assumptions.
syms x positive
assumptions
ans = 
f = sin(x)+x^2
f = 
testit(f, x)
ans = 
ans = Empty sym: 1-by-0
ans = 
ans = 
assumptions
ans = Empty sym: 1-by-0
function testit(f, var)
assumptions
syms x
assumptions
diff(f, x)
diff(f, var)
end

更多回答(1 个)

Torsten
Torsten 2025-2-22
编辑:Torsten 2025-2-22
Call the other .m-file with the syms-equation (or function) as input argument.
syms x
f = x.^2;
result = fun(f)
result = 
4
function result = fun(f)
syms x
result = subs(f,x,2);
end

类别

Help CenterFile Exchange 中查找有关 Assumptions 的更多信息

产品


版本

R2024b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by