mdsk.net
当前位置:首页 >> MAtlAB中怎样实现这个分段函数呢?求大神指教啊!! >>

MAtlAB中怎样实现这个分段函数呢?求大神指教啊!!

试试这样,当然在x=0处,会提示产生虚数并报错log(0),但这没关系.clear all;clc; x=-10:0.01:3.5; y=(2*x.^2-3*sin(x)).*(x>=0)+(-log(-x)).*(x<0); for m=1:length(x) if x(m)==3 m1=m; else if x(m)==-9 m2=m; end end end y(m2) y(m1) plot(x,y,'Linewidth',2);grid on;

你这个被积函数比较复杂,估计只能用matlab的ode45之类的数值积分方法了.给你提供了一个代码例子,你可以按照自己实际数据修改.function testclc;close all;format short gphi_ij=@(x,y) phi_i(x,y)*phi_j(x,y);options = odeset('RelTol',1e-4,'

x=-2:2; y=(abs(x)=1);plot(x,y)

function yout=myfun1(x,D)% myfun1 help h=5% |- h ,x>D% y=f(x)=| h/(D.*x) ,|x|<=D% |- -h ,x<-D if x>D yout=5; elseif abs(x)<=D yout=5./(x.*D); elseif x<D yout=-5; end 上边是函数,h我定义成5了,你可以根据你实际来修改,或者像x和D一样作为参数传进来 d=2;>> for k=1:100 x(k)=-50+k; y(k)=myfun1(x(k),d); end plot(x,y) 这是在matlab中调用方法

clc,clear;close alla=(1:10)/5; %a改成你自己的x=0:0.01:10;for i=1:10 x_temp=x((i-1)*10+1:i*10); S=(x_temp-(ones(1,10)*a(i)).^2); plot(x_temp,S) hold onend

t=-1:0.01:3; % 自己根据需要设置 m=zeros(size(t)); for i=1:length(t) if (t(i)>=0)&(t(i)<1) m(i)=t(i); elseif (t(i)>1)&(t(i)<=2) m(i)=-t(i)+2; else m(i)=0.1; end end plot(t,m,'r') grid on

你这个程序问题太多了1. 不推荐使用for循环.2. 你每得出一组y就画一次曲线,最终得出的是关于t的四条y曲线.3. elseif 应该连用,不然每一个if都要一个end,而且else最好和if在不同的行4. t到底定义成符号变量还是向量呢?错误还有很多,任

x=linspace(0,10,100); if x>0&x<=2; y=0.5*x; else if x>2&x<6; y=1.5-0.25*x; else y=0.5; end

最低0.27元开通文库会员,查看完整内容> 原发布者:bitian216 f(x)的定义如下: 1、写一个函数文件f(x)实现该函数,要求参数x可以是向量;2、作出该函数的图形;3、求出f(x)的零点与最值.解:(1)、编写M函数文件functiony=f(x)n=length(

if x>1 x=1;elseif abs(x)<=1 x=x;else x=-1;end

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