msww.net
当前位置:首页 >> mAtlAB输入x值求y值 >>

mAtlAB输入x值求y值

syms x eq=-114.4.*(exp(-2.006.*x)-exp(-0.1855.*x))-20; X=solve(eq,x) ezplot(eq,[-0.5 0.5]) hold on plot(X,subs(eq,X),'r*')

x=fsolve(@(x)-114.4.*(exp(-2.006.*x)-exp(-0.1855.*x))-20,0)

不妨设 x=[1 2 3;4 5 6]; y=[1 -2 3;4 -5 -6]; if (size(x)==1&size(y)==1) if(x>=0)&(y>=0) f=x+y; elseif(x>=0)&(y<0) f=x+y*y; elseif(x<0)&(y>=0) f=x*x+y; elseif(x<0)&(y<0) f=x*x+y*y; end elseif size(x)==size(y) sizex=size(x); for i=1:sizex(1)*sizex(2) if (x(i)>=0)&

x=input('x='); y=input('y='); t=x; x=y; y=t;

interp1可以反过来由y求x,前提是y应当是单调变化的.如果y不是单调变化,就意味着对同一个y可能对应多个x,这种情况下应当对y进行分段插值.

最简单的方法直接在主命令窗口:syms kx=1;y=k*x如果是更一般的解决这类问题需要编写函数文件:定义一个函数存为m-file%%%%%%%%%%%%%%%%%f.m%%%%%%%%%%%%%function y=ff(x)syms ky=k*x%%%%%%%%%%%%%%%%%%主窗口输入:y=ff(1)代入k值用k=3;eval(ff(1))

int64_t* value = (int64_t*)lpvData; printf("common: thread %答d: lpvData=%lx : value=%lld\n", GetCurrentThreadId(), lpvData,*value); Sleep(5000); }

如是线性,可以用regress()函数,如是非线性,可以用 nlinfit()函数或lsqcurvefit()函数.如你有数据可以传给我,可以帮你分析一下.

如果知道函数的解析表达式,可以考虑试一试finverse,在一些简单的情况下,可能求出反函数的表达式.例如, syms x,finverse(1/tan(x)) 得到 atan(1/x) 如果使用上面的finverse求反函数失败,可以用数值方法来求反函数的值.

你好!你输入的时候:x=[] y=[.] 设置一个中间变量不就可以了 t=x x=y y=t 希望对你有所帮助,望采纳.

网站首页 | 网站地图
All rights reserved Powered by www.msww.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com