声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1540|回复: 2

[计算数学] 请大牛看看我的程序怎么办才好?

[复制链接]
发表于 2007-8-26 21:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
clc;clear;close;
M=[1 1 1];M=diag(M);
C=diag([0.1,0.0,0.0]);
K=9*[1 1 1];K=diag(K);
u=[0 0 0]';
v=[0 0 0]';
a=[10 0 0]';
t(1)=0;               %时间
x(:,1)=u;             %位移
x1(:,1)=v;            %速度
x2(:,1)=a;            %加速度
%newmark参数
gama=0.5;
dt=1e-1;
delta=0.25;
a0=1/(delta*dt^2);
a1=gama/(delta*dt);
a2=1/(delta*dt);
a3=1/(2*delta)-1;
a4=gama/delta-1;
a5=dt*(gama/(2*delta)-1);
a6=dt*(1-gama);
a7=gama*dt;
q=zeros(5,1);
%等效刚度矩阵
K1=K+a0*M+a1*C;
% a0=zeros(5,1);
t_max=100;       %计算时间总长
i=1
%t(1)=0;
q=zeros(3,1);
while t(i)<t_max
      f=0*sin(3*t(i))
      Q=[f,0,0]';
      q=Q+M*(a0*x(:,i)+a2*x1(:,i)+a3*x2(:,i))+C*(a1*x(:,i)+a4*x1(:,i)+a5*x2(:,i));
      x(:,i+1)=inv(K1)*q
      x2(:,i+1)=a0*(x(:,i+1)-x(:,i))-a2*x1(:,i)-a3*x2(:,i);
      x1(:,i+1)=a1*(x(:,i+1)-x(:,i))-a4*x1(:,i)-a5*x2(:,i);
      i=i+1;
      t(i)=t(i-1)+dt;
end
如果我想用位移向量迭代x(:,i+1)的最后一个数值画图,怎么截取啊?
请大牛指点,谢谢了
回复
分享到:

使用道具 举报

 楼主| 发表于 2007-8-26 21:27 | 显示全部楼层
大牛会的的话
请把画图程序代码给我写出来吧
发表于 2007-8-27 10:14 | 显示全部楼层
利用时间和位移迭代好像不完全相同吧在方法上,就算程序和方法通用,说实话我觉得你更应该写出你的具体问题,而不是仅仅写出程序来
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-20 03:15 , Processed in 0.053488 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表