我正在尝试为x解决以下稳态方程:
0 = -C + 2*C0*(1-exp(-k*A*x*phi))
我已将所有变量定义为 syms ,但无法弄清楚如何求解x的等式。由于所有其他变量都是已知的,我已尝试将它们替换为:
f = -C + 2*C0*(1-exp(-k*A*x*phi))
subs(f, [C 20], [C0 11], [k .015], [A .031], [phi .01])
但这也行不通。
答案 0 :(得分:1)
使用subs
将符号变量替换为值的正确方法是使用 three 输入变量。第一个是符号表达式,the second是要替换的符号变量数组,the third是要用第二个输入替换每个变量的事物数组。
syms C C0 k A x phi
f = -C + 2*C0*(1-exp(-k*A*x*phi));
% Substitute in values that are known
newf = subs(f, [C, C0, k, A, phi], [20, 11, 0.015, 0.031, 0.01]);
% 2 - 22*exp(-(93*x)/20000000)
% Solve the resulting symbolic expression for x
result = solve(newf == 0, x)
% (20000000*log(11))/93
% And if you need a numeric (rather than symbolic) result
double(result)
% 5.1568e+05