如何同时实现平动系数 扭转系数和转动

如何同时实现平动和转动假设一圆柱体竖立在平面上,如何同时实现它在平面上的移动(某一个方向即可,如X轴)以及沿其轴线(Z轴)的转动?_百度作业帮
拍照搜题,秒出答案
如何同时实现平动和转动假设一圆柱体竖立在平面上,如何同时实现它在平面上的移动(某一个方向即可,如X轴)以及沿其轴线(Z轴)的转动?
如何同时实现平动和转动假设一圆柱体竖立在平面上,如何同时实现它在平面上的移动(某一个方向即可,如X轴)以及沿其轴线(Z轴)的转动?
一,平动也称平移(translational motion),平行移动.是机械运动的一种特殊形式 .当刚体运动时,如果刚体内任何一条给定的直线,在运动中始终保持它的方向不变,这种运动叫做“平动”.[解释2]:运动物体上任意两点所连成的直线,在整个运动过程中,始终保持平行,这种运动叫做“平动”.特点是在同一时刻,运动物体上各点的速度和加速度都相同.因此在研究物体的平动时,可不考虑物体的大小和形状,而把它作为质点来处理.二,转动运动物体上,除转动轴上各点外,其他各点都绕同一转动轴线作大小不同的圆周运动,这种运动叫做“转动”.物体上各点的运动轨迹是以转轴为中心的同心圆.特点是距转轴较近的点,其线速度和线加速度都较小,但角速度和角加速度都相同.查看: 1492|回复: 4|关注: 0
平动面/旋转面/纽带的绘制
关注者: 8
本帖最后由 kastin 于
22:54 编辑
MATLAB的绘图功能被认为是科学绘图领域里非常强大的软件,但有三个些不完美的地方:曲线不能实现抗锯齿,反光色的设定不自由,计算几何方面绘图功能不全。好在基本绘图已经足够满足大家的绘图需求了,但是在绘制一些特殊的曲面的时候,需要一点技巧。下面就提供关于平动面、旋转面和纽带的绘制方法。弥补一下这方面的空白。
一般来说,曲面和曲线的定义有两种,一种是用运动学的观点来描述的;一种是用参数坐标的观点描述的。
运动学的观点认为,曲线是由动点的轨迹形成的,曲面则是由动曲线的轨迹形成的。
这种方法比较直观,但是无法概括所有的曲线或者曲面,因为有些曲线无法用动点的轨迹描述,比如对于一些曲线有多支或者离散点等情况,动点轨迹无法定义。同样,动曲线形成的曲面也是很有限的,即使这个动曲线在运动的过程中还能发生形变(比如拉伸收缩或者扭曲)。
参数坐标观点则认为,曲线或者曲面是一组参数表达的坐标点集合形成的。这种描述较前者深刻得多也便于数学公式分析,因此在数学分析、微分几何领域采用的是更加完备广义的后一种定义。正因为这种方法的广泛性,运动学描述的曲面都可以用参数坐标来表示。
由于对于坐标参数表达的曲线或者曲面,用matlab相对较简单,几乎直接就能实现。这里我们将要提供的曲面绘制方法是运动学描述观点下的。
1. 平动曲面
给定一条被称之为母线(generatrix)的空间曲线C,和一条被称为准线或者导线(directrix)的空间曲线L,令曲线C沿着L平行移动,由此产生的曲面F称为平动曲面。
2. 旋转曲面
给定一条空间曲线C和一根任意方向的定轴I,令曲线C绕轴旋转一定角度,由此所形成的曲面称之为旋转面。这里的轴用该轴上的一点 以及与之共线的向量来表示(或者两点也行)。
设C是一条平面或空间曲线(准线)。另一条长为h的线段L(母线)与此曲线垂直相交,且交点在曲线C上移动。同该线段固定在在曲线C的法平面上以角速度w旋转,由此“螺旋前进”的线段形成宽为h的曲面称为纽带(Twisted Ribbon)。
其中,旋转曲面和纽带本质都是曲线平动+自转复合形成的曲面。只不过前者的平动方向是垂直于轴的方向,而后者是平行于轴的方向(熟悉运动学的同学应该能理解这一点)。因此,运动学里面最基本的两种运动方式(平动和转动)所复合形成的最基本的曲面也就是上面三种了。
下面给出这三种曲面用matlab实现的例子。注意,为了方便演示,每个例子给的都是简单的情况,但程序针对一般情况都能用,只要修改输入就行。
平动曲面t=(0:pi/36:2*pi).';
% the directrix
x=-3*cos(t).^2;
y=2+5*sin(t);
z=sin(t)/1000;
% the generatrix
zl=(0:0.1:4).';
yl=sin(zl).*log(zl.^2+1);
dr=bsxfun(@minus,[x,y,z],[0,yl(1) zl(1)]);
X=bsxfun(@plus,zeros(size(zl)),dr(:,1)');
Y=bsxfun(@plus,yl,dr(:,2)');
Z=bsxfun(@plus,zl,dr(:,3)');
surf(X,Y,Z)
xlabel('X')
ylabel('Y')
zlabel('Z')
hold on
plot3(zeros(size(zl)),yl,zl,'y','linewidth',2)
plot3(x,y,z,'g','linewidth',2)
text(x(floor(end/2))+0.6,y(floor(end/2))+0.1,z(floor(end/2)),'准线')
text(0,yl(2)+0.2,zl(2)+0.2,'母线')
view(102,14)复制代码
untitled.png (23.36 KB, 下载次数: 0)
17:14 上传
旋转面必须注意的是,曲线沿着轴的法平面内的圆移动所得到平动曲面,与绕轴旋转得到的曲面是不一样的(除非这个曲线是一直线,且与轴共面)。phi=(0:pi/36:2*pi).';
x=3+cos(phi).^3;
y=5+sin(phi).^3;
z=zeros(size(x));
X=[x y z];& && && && && && &&&% input curve
p=[-2 1 0];& && && && && && &% a point on the axis
direct=[0 1 0];& && && && & % direction
theta=0:pi/25:2*& && &% rotation angle
ori=direct/norm(direct);
k=repmat(ori,size(X,1),1);
v=X-repmat(p,size(X,1),1);
kcrossv=cross(k,v);
kdotv=dot(k,v,2);
% Rodrigues' rotation formula
X=v(:,1)*cos(theta)+kcrossv(:,1)*sin(theta)+kdotv*(1-cos(theta)).*k(1,1)+p(1);
Y=v(:,2)*cos(theta)+kcrossv(:,2)*sin(theta)+kdotv*(1-cos(theta)).*k(1,2)+p(2);
Z=v(:,3)*cos(theta)+kcrossv(:,3)*sin(theta)+kdotv*(1-cos(theta)).*k(1,3)+p(3);
surf(X,Y,Z)
ens=p+9*
hold on
% Add the axis (in yellow) and original curve (in green)
plot3(x,y,z,'g',[p(1) ens(1)],[p(2) ens(2)],[p(3) ens(3)],'y','linewidth',2)& &% plot axis and original curve
hold off
xlabel('X'); ylabel('Y'); zlabel('Z')
view(3)复制代码下图是效果图,注意旋转角度的正负跟轴的方向满足右手法则。当然,程序中旋转角度可以自定,可以小于2pi,也可以大于2pi。
untitled.png (15.79 KB, 下载次数: 0)
17:28 上传
纽带在离散情况下,这种曲面(也包括很多直纹面)的网格单元面会发生扭曲,因此每个小面片就不再是平面了。另外,上面关于纽带的定义是较为特殊的一种情况,因为直线段可以不垂直于准线,且纽带宽度也不一定必须是固定的。
下图是网络上用Mathematica绘制的一个动画。
1733897.gif (509.54 KB, 下载次数: 5)
22:54 上传
现在用matlab来实现上面的曲面,蓝色线绕红色线进动形成的莫比乌斯曲面。h=2; % width of the ribbon
k=0; % initial slope of a line segment
s=-h/2:0.2:h/2;& &&&% parameter of the line segment
t=(0:pi/90:2*pi).'; % turning angle
p=1;& && && && && & % angular velocity
[S,T]=meshgrid(s,t);
x=cos(p*T).*S-k*sin(p*T).*S;&&% rotate the line segment
y=sin(p*T).*S+k*cos(p*T).*S;
% the directrix
x0=4*cos(t);
y0=4*sin(t);
z0=zeros(size(x0));
tau=diff([[x0 y0 z0];x0(1) y0(1) z0(1)]);&&% tangent vector of the directrix
tau=tau./repmat(sqrt(sum(tau.^2,2)),1,3);
dir=[1 k 1];& && &&&% direction of initial line segment
dir=dir/norm(dir);
b=cross(tau,repmat(dir,length(tau),1));& & % binormal vector
n=cross(tau,b); % normal vector
X=repmat(x0(1:end),1,size(x,2))+x(1:end,:).*repmat(n(:,1),1,size(x,2))+y(1:end,:).*repmat(b(:,1),1,size(x,2));
Y=repmat(y0(1:end),1,size(x,2))+x(1:end,:).*repmat(n(:,2),1,size(x,2))+y(1:end,:).*repmat(b(:,2),1,size(x,2));
Z=repmat(z0(1:end),1,size(x,2))+x(1:end,:).*repmat(n(:,3),1,size(x,2))+y(1:end,:).*repmat(b(:,3),1,size(x,2));
surf(X,Y,Z,'edgealpha',.5)
hold on
% colored line (red for the directrix and blue for the initial line segment)
plot3(x0,y0,z0,'r',...
& & [X(1,1);X(1,end)],[Y(1,1);Y(1,end)],[Z(1,1);Z(1,end)],'b','linewidth',2)
hold off
title('Mobius Strip')
xlabel('X'); ylabel('Y'); zlabel('Z')复制代码
untitled.png (28.28 KB, 下载次数: 0)
19:17 上传
不过貌似上面的动画MATLAB很难做出来。因为Mathematica绘图不是使用矩阵方法绘制的,而是一个面片一个面片绘的,但MATLAB是整体绘制的。
关注者: 42
本帖最后由 kaaaf123 于
12:10 编辑
你发的mathematica的gif从网格数量上看,似乎每帧都是整个图形重绘的结果,因为网格数量似乎是不变的,只是一直在拉伸
用matlab做了一个网格形状固定,但是数量增多的样式:
R = 4; r = 1;
t = (0:100)/50*
s = (0:100)/100*
x = [(R + sin(s)*r) .* cos(t); (R - sin(s)*r) .* cos(t)];
y = [(R + sin(s)*r) .* sin(t); (R - sin(s)*r) .* sin(t)];
z = [r; -r] * cos(s);
figure, view(3), axis([-5 5 -5 5 -1 1]), daspect([1 1 1])
h = surface([], [], []);
for i = 2:size(x,2)
& & set(h,'xdata',x(:,1:i),'ydata',y(:,1:i),...
& && &&&'zdata',z(:,1:i),'cdata',x(:,1:i))
& & drawnow
上述绘图方式当然还是重绘,因为希望结果作为一个整体,但是视觉效果是一片片添加的。当然也可以直接写成一片片添加surface或patch
关注者: 8
你发的mathematica的gif从网格数量上看,似乎每帧都是整个图形重绘的结果,因为网格数量似乎是不变的,只是 ...
如果是一片片添加的话,会不会效率要高一些呢?但是一片片的绘制的话,出来的面片就不是一个标量handle了。
关注者: 42
如果是一片片添加的话,会不会效率要高一些呢?但是一片片的绘制的话,出来的面片就不是一个标量handle了 ...
性能你可以测试下,surface就不用测了,只测试patch就行了
我也是主要想保持一个整体,所以没有分开绘图,而且这里性能也不是很重要,毕竟绘图的时候多数情况下需要绘制整体的,动态绘图的需求比较少
关注者: 8
性能你可以测试下,surface就不用测了,只测试patch就行了
我也是主要想保持一个整体,所以没有分开绘图 ...
也对,整体还是更重要。
站长推荐 /2
Powered by求助:如何判定刚体是平动还是转动呢_物理吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:273,055贴子:
求助:如何判定刚体是平动还是转动呢收藏
在光滑水平面上对一刚体施加一冲量 (比如说一长为l的杆,质心在距左端l',冲量也施加在左端),那怎么列方程判断它是平动还是转动呢? 先多谢诸位了~
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或

我要回帖

更多关于 平动系数 扭转系数 的文章

 

随机推荐