1/k*(x-1/a)exp(a*x)=m (其中k,a,m已知)matlab怎么求x的值?
1条回答 默认 最新
joel_1993 2021-09-13 19:40关注你好同学,这个用符号求解工具箱里的函数,具体代码为
syms k x a m x = solve(1/k*(x-1/a)*exp(a*x)==m, x)但是发现无法找到表达式,因为是超越函数,符号提取x是不可能的
所以只能数值实现,下面是数值实现方法
k = 1;%k自己设置 a = 1;%a自己设置 m = 1;%m自己设置 f = @(x,k,a,m)1/k*(x-1/a)*exp(a*x)-m; %都移到左边来 x0 = 1; x = fsolve(@(x)f(x,k,a,m), x0)得到一个在x0=1附近的解:
x = 1.278464544117931本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 1无用