cdwxg 发表于 2006-4-3 10:15

一个有字母的分段函数怎么做?谢谢

偶刚看到这个网站,也刚来这里就求助真不好意思!但还是希望大家都帮帮偶...谢谢先:)
就是一个分段函数,当x<=c1,t=exp[-1/2*((x-c1)/b1)^2];c1<x<c2,t=1;x>=c2,t=t=exp[-1/2*((x-c2)/b2)^2]
就是不知道怎么定义这个c1,b1,c2,b2
如何对它进行变成来画出它的图形呢,这个是个高斯图形,请教大家了,谢谢帮忙!急:(

该题已结楼主、happy、zhuer各加威望1点

多情清秋
06.4.5

cdwxg 发表于 2006-4-3 10:39

5555没人理我啊,帮帮忙,各位大虾们...在线等啊..急!!!下午要交...

happy 发表于 2006-4-3 10:56

参照帖子
http://forum.vibunion.com/thread-8352-1-1.html

cdwxg 发表于 2006-4-3 11:03

可这里是c1,b1,c2,b2,不是普通的数字啊,总是说c1等没有定义,就是这个把俺难住了,帮帮忙,大哥:)

happy 发表于 2006-4-3 11:09

可这里是c1,b1,c2,b2,不是普通的数字啊,总是说c1等没有定义,就是这个把俺难住了,帮帮忙,大哥:)
不管用什么方法c1,b1,c2,b2都要给出来的,不给出来是不可能把图作出来的

cdwxg 发表于 2006-4-3 11:11

x1=
y1=exp[-1/2*(x-c1).^2./(b1.^2)]
x2=
y2=1
x3=
y3=exp[-1/2*(x-c2).^2./(b2.^2)]
x=
y=
plot(x,y)
这样么?可是c1等没定义,另外,在x3中我用了10 ,其实是x>=c2也就是后面没界限,那么这样该如何表示呢?
麻烦了..

happy 发表于 2006-4-3 11:16

要画图必须给出来的,当然你可以写到function中,这时可以暂时不给值,但是调用的时候还是一样必须给的
不管有限无限,都要作采样处理,换句话说必须截断,在那里截断是你自己的选择了

cdwxg 发表于 2006-4-3 11:22

明白了...哈哈,谢谢了,教授:)那我上面写的程序你看对不呢?哪里有错吗?

happy 发表于 2006-4-3 11:23

x1=
y1=exp[-1/2*(x-c1).^2./(b1.^2)]
x2=
y2=1
x3=
y3=exp[-1/2*(x-c2).^2./(b2.^2)]
x=
y=
plot(x,y)
这样么?可是c1等没定义,另外,在x3中我用了10 ,其实是x>=c2也就是后面没界限,那么这样该如何表示呢?
麻烦了..
红色部分不对
x2=
y2=

cdwxg 发表于 2006-4-3 11:26

真是不胜感激啊,看来以后有人照了,哈哈,谢谢happy教授,也希望你天天happy哈。

cdwxg 发表于 2006-4-3 11:30

y1=exp[-1/2*(x-25).^2./(10.^2)]

Error: Unbalanced or misused parentheses or brackets.
这个是什么意思呢?教授

zhyuer 发表于 2006-4-3 11:34

你想画到哪个范围把值定一下不就好了
用未知字母前必须要定义的,你的程序中要注意的地方太多
下面例子先看看
c1=1;c2=5;b1=2;b2=3;
x1=;x2=0;x3=;
x=;
y1=exp(-1/2*(x-c1).^2./(b1.^2));
y2=1;
y3=exp(-1/2*(x-c2).^2./(b2.^2));
y=;
c1=1;c2=5;b1=2;b2=3;
x1=;x2=0;x3=;
x=;
y1=exp(-1/2*(x-c1).^2./(b1.^2));
y2=1;
y3=exp(-1/2*(x-c2).^2./(b2.^2));
y=;
plot(x,y1)

zhyuer 发表于 2006-4-3 11:36

所有括号都用小括号

cdwxg 发表于 2006-4-3 11:44

为什么要用x2=0?
为什么不能直接plot(x,y)but plot(x,y1)

cdwxg 发表于 2006-4-3 11:48

我取c1=25 b1=10 c2=50 b2=20
程序为
x1=
y1=exp[-1/2*(x-25).^2./(10^2)]
x2=
y2=
x3=
y3=exp[-1/2*(x-50).^2./(20^2)]
x=
y=
plot(x,y)
不行,不晓得错在哪里?plot最后不能一起画么?
谢谢了
页: [1] 2
查看完整版本: 一个有字母的分段函数怎么做?谢谢