我希望我的图是连续的

1次观看(过去30天)
马哈茂德·Chawki
马哈茂德·Chawki 2021年8月9日
评论道: 里克 2021年8月9日
我希望图像是连续的。然而,它打破了点7到8的形式(t=7到t=8)。
你可以从函数中看到,一开始它是一个多项式,之后它是线性的,它不以7为公共点。
我怎么才能解决这个问题?

接受的答案

里克
里克 2021年8月9日
您还可以让Matlab通过创建一个匿名函数并使用 fplot
一个= 8.4;
v = 58.8;
fun=@(t) 0 +...
(t < = 7)。*(0.5 *。* (t ^ 2)) +...
(t > 7)。* (v * t);
fplot(有趣,30 [0])
然而,如果你想平稳过渡,你就必须做出调整 一个 v
t = 7;
(0.5 *。* (t ^ 2)诉* t]
ans = 1×2
205.8000 - 411.6000
为了使它们对于t的某个值相等,这个关系必须成立:
0.5 *。* (t) ^ 2) = = v * t
* t ^ 2 = 2 vt
在v = 2
t = 2 v /
如果你想让t=7,那意味着
7=2v/a => v=7a/2 => v=29.4
现在让我们把它画出来:
v = 29.4;
fun=@(t) 0 +...
(t < = 7)。*(0.5 *。* (t ^ 2)) +...
(t > 7)。* (v * t);
fplot(有趣,30 [0])

更多答案(2)

Wan霁
Wan霁 2021年8月9日
如果你按照斯科特·麦肯齐的建议去做,也许会有用,或者你可以这样做
T = [0:1:6, 6. 01:01 . 6.99, 7:1:30];
这样会使你的曲线更平滑。
2的评论
Wan霁
Wan霁 2021年8月9日
当t = 7时,y遇到一个间隙。一种可能的方法是把它们都计算出来然后比较。
A = 8.4;V = 58.8;t = 0:0.1:30;
X1 = 0.5*a*t.^2;X2 = v*t;
Q = x1
X = x1。*q + x2.*~q;
情节(t, x)
很容易找到交点是14.2,正如前面提到的 @Scott麦肯齐

登录评论。


斯科特·麦肯齐
斯科特·麦肯齐 2021年8月9日
你需要确定两个函数的交点,然后在第6行中使用该点作为两条曲线之间的过渡点。这个点是t = 14,幸运的是,它是一个整数。因此,将第6行中的7更改为14,然后就可以开始了:
3评论
里克
里克 2021年8月9日
@Bjorn 对,在这种情况下v必须设为 * t

登录评论。

标签

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!