用MATLAB画曲线族

用MATLAB画曲线族
用MATLAB画曲线族

用MATLAB画曲线族

(y-c)^2-2/3*(x-c)^3=0的包络线

1 求包络线的方程

syms x y c;

f = (y-c)^2-2/3*(x-c)^3

dfc = diff(f, c)

S = solve(f,dfc)

S1x = S.x

S1y = S.y

计算结果:

该曲线族有两条包络线:

x1 = c1 ;

y1 = c1 ;

x1 = c1 + 2/3;

y1 = c1 + 4/9;

2 画线

close all

clear,clc

warning('off')

figure

% 曲线族

hold on

for c = -10:0.5:10

x = -10:0.1:10;

y = (2/3)^0.5.*(x-c).^1.5 + c;

plot(x,y)

end

% 包络线

c1 = -10:0.1:10;

x1 = c1 ;

y1 = c1 ;

plot(x1,y1,'r','LineWidth',2)

figure

% 曲线族

hold on

for c = -10:0.5:10

x = -10:0.1:10;

y = -(2/3)^0.5.*(x-c).^1.5 + c; plot(x,y)

end

% 包络线

c1 = -10-2/3:0.1:10-2/3;

x1 = c1 + 2/3;

y1 = c1 + 4/9;

plot(x1,y1,'r','LineWidth',2)

............................

包络线

跳转到:导航, 搜索

在几何学,某个曲线族的包络线(Envelope),是跟该曲线族的每条线都有至少一点相切的一条曲线。(曲线族即一些曲线的无穷集,它们有一些特定的关系。)

设一个曲线族的每条曲线C s可表示为

,其中s是曲线族的参数,t是特定曲线的参数。若包络线存在,它是由

得出,其中h(s)以以下的方程求得:

若曲线族以隐函数形式F(x,y,s) = 0 表示,其包络线的隐方程,便是以下面两个方程消去s得出。

绣曲线是包络线的例子。直线族(A?s)x + sy = (A?s)(s)(其中A是常数,s是直线族的变量)的包络线为抛物线。[1]

目录

?1证明

?2参考

?3参见

?4外部链接

[编辑]证明

设曲线族的每条曲线C s为。

设存在包络线。由于包络线的每点都与曲线族的其中一条曲线的其中一点相切,对于任意的s,设(x(s,h(s)),y(s,h(s)))表示C s和包络线相切的那点。由此式可见,s是包络线的变量。要求出包络线,就即要求出h(s)。

在C s的切向量为,其中t = h(s)。

在E的切向量为。因为x是s和t的函数,而此处t = h(s),局部求导有:

类似地得。

因为E和C s在该点相切,因此其切向量应平行,故有

其中。可用此两式消去h'(s)。整理后得:

[编辑]参考

https://www.360docs.net/doc/009253195.html,/~bridger/Envelope/envelope.htm

相关主题
相关文档
最新文档