matlab绘制三角函数乘除法的问题

普通的,画一个sin(x)或者cos(x)网上一大堆,不说了。

关于绘画y=sin(x)*cos(x),看结论的直接拉到最后就好。前面要说一下解决问题的过程。

我想画一个很复杂的函数,其中包含了三角函数的乘除法。

x=pi/6:pi/100:pi/2;
d=(3*tan(x))/((-0.3*cos(x).^2-4*sin(x).^2-1)*2*pi*sqrt(6/5*sin(x).^2+0.3));

在matlab中输入上式以后,发现报错。

错误使用  * 
内部矩阵维度必须一致。

出错 shijiedetuxiang (line 2)
d=(3*tan(x))/((-0.3*cos(x).^2-4*sin(x).^2-1)*2*pi*sqrt(6/5*sin(x).^2+0.3));

很奇怪,我并没有矩阵啊。

然后一点一点看。

首先想到tan(pi/2)是否会影响,结果发现不会。

那没有别的办法了, 只有一点一点把公式重新写出来看看在哪里出错了。结果发现:

如果写成:

x=pi/6:pi/100:pi/2;
d=sin(x)/tan(x);
plot(x,d)

这样的情况,理论上sin(x)/tan(x)其实是cos(x)才对,但是最后图像上竟然是白色空白。

经过查阅资料才知道,应该写成:

x=pi/6:pi/100:pi/2;
d=sin(x)./tan(x);
plot(x,d)

即在sin(x)后面加一个"."

 问题得到解决。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值