动力学系统时域响应计算的六种方法Matlab源程序(Newmark,Houbolt法,中心差分法)。直接使用,无需再修改。

Newmark法Matlab源程序

function [acc,vel,dsp]=Newmark_2(kk,cc,mm,fd,nt,dt,q0,dq0)

%输入参数

% kk------刚度矩阵

% mm------质量矩阵

% cc------阻尼矩阵

% q0------初始位移

% dq0------初始速度

% dt------时间步长

% nt------总的计算步数,等于结束时间除以dt

%返回值

% dsp------位移

% vel------速度

% acc------加速度

[sdof,n2]=size(kk);

dsp=zeros(sdof,nt); % displacement matrix

vel=zeros(sdof,nt); % velocity matrix

acc=zeros(sdof,nt); % acceleration matrix

dsp(:,1)=q0; % initial displacement

vel(:,1)=dq0; % initial velocity

alpha=0.5; beta=0.5; % select the parameters

acc(:,1)=inv(mm)*(fd(:,1)-kk*dsp(:,1)-cc*vel(:,1)); % compute the initial acceleration (t=0)

ekk=kk+mm/(alpha*dt^2)+cc*beta/(alpha*dt);

for it=1:nt % loop for each time step

cfm=dsp(:,it)/(alpha*dt^2)+vel(:,it)/(alpha*dt)+acc(:,it)*(0.5/alpha-1);

cfc=dsp(:,it)*beta/(alpha*dt)+vel(:,it)*(beta/alpha-1)...

+acc(:,it)*(0.5*beta/alpha-1)*dt;

efd=fd(:,it)+mm*cfm+cc*cfc; % compute the effective force vector

dsp(:,it+1)=inv(ekk)*efd; % find the displacement at time t+dt

acc(:,it+1)=(dsp(:,it+1)-dsp(:,it))/(alpha*dt^2)-vel(:,it)/(alpha*dt)...

-acc(:,it)*(0.5/alpha-1); % find the acceleration at time t+dt

vel(:,it+1)=vel(:,it)+acc(:,it)*(1-beta)*dt+acc(:,it+1)*beta*dt;% find the velocity at time t+dt

end

中心差分法Matlab源程序

function [acc,vel,dsp]=central_diff(kk,cc,mm,fd,nt,dt,q0,dq0)

%输入参数

% kk------刚度矩阵

% mm------质量矩阵

% cc------阻尼矩阵

% q0------初始位移

% dq0------初始速度

% dt------时间步长

% nt------总的计算步数,等于结束时间除以dt

%返回值

% dsp------位移

% vel------速度

% acc------加速度

[sdof,n2]=size(kk);

dsp=zeros(sdof,nt); % displacement matrix

vel=zeros(sdof,nt); % velocity matrix

acc=zeros(sdof,nt); % acceleration matrix

dsp(:,1)=q0; % initial displacement

vel(:,1)=dq0; % initial velocity

acc(:,1)=inv(mm)*(fd(:,1)-kk*dsp(:,1)-cc*vel(:,1));

dsp0=dsp(:,1)-vel(:,1)*dt+0.5*acc(:,1)*dt^2;

ekk=mm/dt^2+cc/(2*dt);

efd=fd(:,1)-(kk-2*mm/dt^2)*dsp(:,1)-(mm/dt^2-cc/(2*dt))*dsp0;

dsp(:,1+1)

=inv(ekk)*efd;

for it=2:nt % loop for each time step after first step

efd=fd(:,it)-(kk-2*mm/dt^2)*dsp(:,it)-

中心差分法matlab实现,动力学系统时域响应计算的六种方法Matlab源程序(Newmark,Houbolt法,中心差分法)...相关推荐

  1. matlab 系统时域响应,动力学系统时域响应计算的六种方法Matlab源程序(Newmark,Houbolt法,中心差分法)...

    Newmark法Matlab源程序 function [acc,vel,dsp]=Newmark_2(kk,cc,mm,fd,nt,dt,q0,dq0) %输入参数 % kk------刚度矩阵 % ...

  2. 一维离散动力学系统的混沌研究【基于matlab的动力学模型学习笔记_8】

    摘 要:混沌(Chaos)是指发生在确定系统中的貌似随机的不规则运动,本文将基于几种经典的一维动力学方程系统,根据其动力学方程研究其混沌产生过程以及相对应的MATLAB仿真. /*仅当作学习笔记,若有 ...

  3. 二维离散动力学系统的混沌研究【基于matlab的动力学模型学习笔记_9】

    摘 要:混沌(Chaos)是指发生在确定系统中的貌似随机的不规则运动,本文将基于经典的二维系统,然后根据动力学方程研究其混沌产生过程以及相对应的MATLAB仿真,再讨论Lyapunov指数以及正平衡点 ...

  4. matlab中的代数环问题及其消除方法,Matlab中的代数环问题及其消除方法

    0 引言 反馈是一种普遍存在的现象,在进行计算机仿真的时候,将经常会遇到反馈回路.仿真时需要按照一定的时序执行相应的计算步骤,对于存在反馈回路的控制系统,输入和输出存在着计算时序,当输入直接取决于输出 ...

  5. MATLAB Support Package for USB Webcams 的使用方法(MATLAB调用摄像头后的使用方法)

    这篇博文是博文 https://blog.csdn.net/wenhao_ir/article/details/125443771的配套博文. 这篇博文是对"MATLAB Support P ...

  6. matlab中的代数环问题及其消除方法,Matlab中代数环问题和其消除方法.PDF

    M a t l a b 中 的 Matlab 中的代数环问题及其消除方法 代 数 环 Algebraic Loop in Simulation of Matlab and its Eliminatio ...

  7. 帧率(FPS)计算的六种方法总结

    帧率(FPS)计算是游戏编程中常见的一个话题.大体来说,总共有如下六种方法: 一.固定时间帧数法 帧率计算的公式为: fps = frameNum / elapsedTime; 如果记录固定时间内的帧 ...

  8. IT企业内部系统运营推广的六种方法

    说到企业内部系统的推广,一般会认为无需推广,直接下一个通知大家都得用.说到推广的方法,很多人可能直接就想到一种方法--培训.是的,企业内部系统有其特殊性,因为用户就是自己的员工,他在这里工作就得使用企 ...

  9. 基于matlab实现的云模型计算隶属度,基于MATLAB实现的云模型计算隶属度

    "云"或者'云滴'是云模型的基本单元,所谓云是指在其论域上的一个分布,可以用联合概率的形式(x, u)来表示 云模型用三个数据来表示其特征 期望:云滴在论域空间分布的期望,一般用符 ...

最新文章

  1. eureka服务下线事件监听(自定义处理逻辑)
  2. 使用git pull文件时和本地文件冲突怎么办
  3. Prufer序列相关
  4. 2月份Web服务器份额:排名不变 仅Microsoft份额上扬
  5. 【JAVA】StringTokenizer 迭代方式对字符串进行分割
  6. 【读书笔记0101】Beginning linux programming-3rd
  7. Redis高可用之持久化
  8. elf section类型_探索ELF可执行文件的“干货”:段头表和段的基本介绍
  9. Emotet***病毒升级,对抗杀毒软件的能力再次增强
  10. 【一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成】
  11. 毕业设计任务书参考地址
  12. [经验] (转帖)IGBT终于不炸了!详解逆变H桥IGBT单管驱动+保护
  13. ROI Pooling原理
  14. 十二星座谁最不会顾及别人感受?
  15. UnsatisfiedDependencyException报错的原因
  16. java 求和、差、乘、商
  17. CAD输出为PDF至A4大小
  18. 9.PMAC上位机-上位机发送指令
  19. Fanuc发那科数据采集
  20. 电源上的sense什么意思_开关电源基本术语

热门文章

  1. 共享充电宝的生意,不香了?
  2. ubuntu16.04安装 petalinux记录
  3. 毕肖普法matlab,瑞典条分法和毕肖普法计算实例.docx
  4. 适合做python开发的笔记本,python编程用什么笔记本
  5. CleanMyMac X Mac 清理工具 v4.4.7
  6. 很全的JavaScript操作(转http://ablya.javaeye.com/category/79696?show_full=true)
  7. 设计模式篇16-访问者模式
  8. 公布我的PFW防火墙系统完整源代码
  9. Java四舍五入的几种方式
  10. 职业规划-嵌入式工程师