A1245362722483 2023-03-05 13:25 采纳率: 0%
浏览 137
已结题

车桥耦合振动车体响应提取

有谁懂车桥耦合吗,通过车桥耦合获得车体的加速度响应,为什么我这个代码实现不了,麻烦有懂的能教我怎么修改一下吗

img

img

img

img

img

img

  • 写回答

7条回答 默认 最新

  • A1245362722483 2023-03-05 13:37
    关注
    
    %桥梁参数
    L=1;
    L1=3;
    EI=1.65e9;
    m1=2400;
    g=9.8;
    %车辆参数
    v=3;
    kv=500000;
    mv=1000;
    cv=0;
    %%%%%%计算
    mb=m1*L/420*[156,22*L,54,-13*L;22*L,4*L^2,13*L,-3*L^2;
        54,13*L,156,-22*L;-13*L,-3*L^2,-22*L,4*L^2];
    kb=2*EI/L/L/L*[6,3*L,-6,3*L;3*L,2*L^2,-3*L,L^2;
        -6,-3*L,6,-3*L;3*L,L^2,-3*L,2*L^2];
    %%%N=[1-3*(xc/L)^2+2*(xc/L)^3;xc*(1-(xc/L))^2;
     %%%  3*(xc/L)^2-2*(xc/L)^3;xc^2/L*(xc/L-1)];
    K1=zeros(9,9);
        M1=zeros(9,9);
    for i=1:2:5
       K1(i:i+3,i:i+3)=K1(i:i+3,i:i+3)+kb;
       M1(i:i+3,i:i+3)=M1(i:i+3,i:i+3)+mb;
    end
    %%%%组装第二部分
    A=cell(1,100);
    B=cell(1,100);
    C=cell(1,100);
    for i1=1:100
     K2=zeros(9,9);
     M2=zeros(9,9);
     F=zeros(9,1);
    t=0.01;
    x1=v*t*i1; %%%接触点位置
    d=L1/3; %%%单元长度
    n=ceil(x1/d); %%接触点所在单元
    xc=x1-(n-1)*L;
    %%%插值函数
    N1=1-3*(xc/L)^2+2*(xc/L)^3;
    N2=xc*(1-(xc/L))^2;
    N3=3*(xc/L)^2-2*(xc/L)^3;
    N4=(xc^2/L)*(xc/L-1);
    N1d=-6*xc/(L.^2)+6*((xc)^2/(L)^3);
    N2d=(1-(xc/L))^2-2*xc/L;
    N3d=6*xc/(L^2)-6*((xc)^2/(L)^3);
    N4d=(xc/L)*(3*(xc/L)-2);
    %%叠加
    kc=[v*cv*N1*N1d+kv*N1*N1,v*cv*N1*N2d+kv*N1*N2,v*cv*N1*N3d+kv*N1*N3,v*cv*N1*N4d+kv*N1*N4;
        v*cv*N2*N1d+kv*N2*N1,v*cv*N2*N2d+kv*N2*N2,v*cv*N2*N3d+kv*N2*N3,v*cv*N2*N4d+kv*N2*N4;
        v*cv*N3*N1d+kv*N3*N1,v*cv*N3*N2d+kv*N3*N2,v*cv*N3*N3d+kv*N3*N3,v*cv*N3*N4d+kv*N3*N4;
        v*cv*N4*N1d+kv*N4*N1,v*cv*N4*N2d+kv*N4*N2,v*cv*N4*N3d+kv*N4*N3,v*cv*N4*N4d+kv*N4*N4];
    
    K2(2*n-1:2*n+2,2*n-1:2*n+2)=K2(2*n-1:2*n+2,2*n-1:2*n+2)+kc;
    k1=[-v*cv*N1d-kv*N1,-v*cv*N2d-kv*N2,-v*cv*N3d-kv*N3,-v*cv*N4d-kv*N4];
    K2(9,2*n-1:2*n+2)=K2(9,2*n-1:2*n+2)+k1;
    k2=[-kv*N1;-kv*N2;-kv*N3;-kv*N4];
    K2(2*n-1:2*n+2,9)=K2(2*n-1:2*n+2,9)+k2;
    k3=[kv];
    K2(9,9)=K2(9,9)+k3;
    K=K1+K2;
    mc=[mv];
    M2(9,9)=M2(9,9)+mc;
    M=M1+M2;
    fc=[-mv*g*N1;-mv*g*N2;-mv*g*N3;-mv*g*N4];
    F(2*n-1:2*n+2,1)=F(2*n-1:2*n+2,1)+fc;
    A(1,i1)={K};
    B(1,i1)={M};
    C(1,i1)={F};
    end
    %%%%%%%%%%%%%%Newmark
    gama=0.5;
    beta=0.25;
    dt=0.01;
    a0=1/beta/dt/dt;
    a1=gama/beta/dt;
    a2=1/beta/dt;
    a3=1/2/beta-1;
    a4=gama/beta-1;
    a5=dt/2*(gama/beta-2);
    a6=dt*(1-gama);
    a7=dt*gama;
    d=zeros(9,101);
    v1=zeros(9,101);
    a=zeros(9,101);
    tt=zeros(9,101);
    for i2=1:100
        tt(1,i2+1)=i2*dt;
        if(i2*dt<=1)
        C{1,i2};
        end
    ke=A{1,i2}+a0*B{1,i2};
    fe=C{1,i2}+B{1,i2}*(a0*d(:,i2)+a2*v1(:,i2)+a3*a(:,i2));
      d(:,i2+1)=inv(ke)*fe;
      a(:,i2+1)=a0*(d(:,i2+1)-d(:,i2))-a2*v1(:,i2)-a3*a(:,i2);
      v1(:,i2+1)=v1(:,i2)+a6*a(:,i2)+a7*a(:,i2+1);
    end
    grid on 
    hold on 
    box on 
    plot(tt(1,:),a(9,:));
    xlabel('t/s'); 
    ylabel('w/m');
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月12日
  • 创建了问题 3月5日