当前位置:编程学习 > Matlab >>

MATLAB程序问题,谁帮我解释下标有#号的地方对应的程序是什么意思和作用

clear; ls=800; % 定杆长 l=270; mg=500; M0=3000; t=0; hhs1=[]; hhs2=[]; hhs3=[]; mm=[]; for alf=0:5:360 t=t+1; z=0; beta=45; d=156; r=150; R=450; beta=beta*pi/180; alf=alf*pi/180; gama=-alf; x1=l*sin(beta)*cos(alf); y1=l*sin(beta)*sin(alf); z1=-l*cos(beta); F=[0,0,mg]; M=[x1,y1,z1]/sqrt(x1^2+y1^2+z1^2)*M0; x=r*(cos(beta)-1)*cos(2*alf)/2; % 由alf,beta 确定的动平台中心点坐标 y=r*(1-cos(beta))*sin(2*alf)/2; p0=[x;y;z]; prsd=[R -R/2 -R/2 0 sqrt(3)*R/2 -sqrt(3)*R/2 800 800 800]; prsx=[r -r/2 -r/2 0 sqrt(3)*r/2 -sqrt(3)*r/2 0 0 0 ]; rot1=[cos(alf) -sin(alf) 0 sin(alf) cos(alf) 0 0 0 1 ]; rot2=[cos(beta) 0 sin(beta) 0 1 0 -sin(beta) 0 cos(beta)]; rot3=[cos(gama) -sin(gama) 0 sin(gama) cos(gama) 0 0 0 1 ]; rot=rot1*rot2*rot3; %rot为旋转矩阵T p1=((prsx(:,1))'*rot)'+p0; p2=((prsx(:,2))'*rot)'+p0; p3=((prsx(:,3))'*rot)'+p0; D(1)=sqrt((p1-prsd(:,1))'*(p1-prsd(:,1)));# %动平台铰点到立柱顶端的距离 D(2)=sqrt((p2-prsd(:,2))'*(p2-prsd(:,2)));# D(3)=sqrt((p3-prsd(:,3))'*(p3-prsd(:,3)));# temp1=-(p1-prsd(:,1))/norm(p1-prsd(:,1));# temp2=-(p2-prsd(:,2))/norm(p2-prsd(:,2));# temp3=-(p3-prsd(:,3))/norm(p3-prsd(:,3));# angles(1)=acos(temp1(3));# %动平台铰点到立柱顶端的矢量与支柱的夹角 angles(2)=acos(temp2(3));# angles(3)=acos(temp3(3));# mfpos=[x;y;z] ;# %动平台中心点的位置坐标 hs(1)=D(1)*cos(angles(1))-sqrt(ls^2-D(1)^2*(sin(angles(1)))^2); %三动杆上端的下降量 hs(2)=D(2)*cos(angles(2))-sqrt(ls^2-D(2)^2*(sin(angles(2)))^2); hs(3)=D(3)*cos(angles(3))-sqrt(ls^2-D(3)^2*(sin(angles(3)))^2); hhs1=[hhs1,hs(1)];# hhs2=[hhs2,hs(2)];# hhs3=[hhs3,hs(3)];# end mm=[hhs1,hhs2,hhs3];# fm=max(mm); # mmm=fm*(d/2/ls)*ls/1000 # plot([1:t],hhs1,'r.',[1:t],hhs2,'k.',[1:t],hhs3,'g.')
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,