中心差分法matlab实现,动力学系统时域响应计算的六种方法Matlab源程序(Newmark,Houbolt法,中心差分法)...
动力学系统时域响应计算的六种方法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法,中心差分法)...相关推荐
- matlab 系统时域响应,动力学系统时域响应计算的六种方法Matlab源程序(Newmark,Houbolt法,中心差分法)...
Newmark法Matlab源程序 function [acc,vel,dsp]=Newmark_2(kk,cc,mm,fd,nt,dt,q0,dq0) %输入参数 % kk------刚度矩阵 % ...
- 一维离散动力学系统的混沌研究【基于matlab的动力学模型学习笔记_8】
摘 要:混沌(Chaos)是指发生在确定系统中的貌似随机的不规则运动,本文将基于几种经典的一维动力学方程系统,根据其动力学方程研究其混沌产生过程以及相对应的MATLAB仿真. /*仅当作学习笔记,若有 ...
- 二维离散动力学系统的混沌研究【基于matlab的动力学模型学习笔记_9】
摘 要:混沌(Chaos)是指发生在确定系统中的貌似随机的不规则运动,本文将基于经典的二维系统,然后根据动力学方程研究其混沌产生过程以及相对应的MATLAB仿真,再讨论Lyapunov指数以及正平衡点 ...
- matlab中的代数环问题及其消除方法,Matlab中的代数环问题及其消除方法
0 引言 反馈是一种普遍存在的现象,在进行计算机仿真的时候,将经常会遇到反馈回路.仿真时需要按照一定的时序执行相应的计算步骤,对于存在反馈回路的控制系统,输入和输出存在着计算时序,当输入直接取决于输出 ...
- MATLAB Support Package for USB Webcams 的使用方法(MATLAB调用摄像头后的使用方法)
这篇博文是博文 https://blog.csdn.net/wenhao_ir/article/details/125443771的配套博文. 这篇博文是对"MATLAB Support P ...
- matlab中的代数环问题及其消除方法,Matlab中代数环问题和其消除方法.PDF
M a t l a b 中 的 Matlab 中的代数环问题及其消除方法 代 数 环 Algebraic Loop in Simulation of Matlab and its Eliminatio ...
- 帧率(FPS)计算的六种方法总结
帧率(FPS)计算是游戏编程中常见的一个话题.大体来说,总共有如下六种方法: 一.固定时间帧数法 帧率计算的公式为: fps = frameNum / elapsedTime; 如果记录固定时间内的帧 ...
- IT企业内部系统运营推广的六种方法
说到企业内部系统的推广,一般会认为无需推广,直接下一个通知大家都得用.说到推广的方法,很多人可能直接就想到一种方法--培训.是的,企业内部系统有其特殊性,因为用户就是自己的员工,他在这里工作就得使用企 ...
- 基于matlab实现的云模型计算隶属度,基于MATLAB实现的云模型计算隶属度
"云"或者'云滴'是云模型的基本单元,所谓云是指在其论域上的一个分布,可以用联合概率的形式(x, u)来表示 云模型用三个数据来表示其特征 期望:云滴在论域空间分布的期望,一般用符 ...
最新文章
- eureka服务下线事件监听(自定义处理逻辑)
- 使用git pull文件时和本地文件冲突怎么办
- Prufer序列相关
- 2月份Web服务器份额:排名不变 仅Microsoft份额上扬
- 【JAVA】StringTokenizer 迭代方式对字符串进行分割
- 【读书笔记0101】Beginning linux programming-3rd
- Redis高可用之持久化
- elf section类型_探索ELF可执行文件的“干货”:段头表和段的基本介绍
- Emotet***病毒升级,对抗杀毒软件的能力再次增强
- 【一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成】
- 毕业设计任务书参考地址
- [经验] (转帖)IGBT终于不炸了!详解逆变H桥IGBT单管驱动+保护
- ROI Pooling原理
- 十二星座谁最不会顾及别人感受?
- UnsatisfiedDependencyException报错的原因
- java 求和、差、乘、商
- CAD输出为PDF至A4大小
- 9.PMAC上位机-上位机发送指令
- Fanuc发那科数据采集
- 电源上的sense什么意思_开关电源基本术语
热门文章
- 共享充电宝的生意,不香了?
- ubuntu16.04安装 petalinux记录
- 毕肖普法matlab,瑞典条分法和毕肖普法计算实例.docx
- 适合做python开发的笔记本,python编程用什么笔记本
- CleanMyMac X Mac 清理工具 v4.4.7
- 很全的JavaScript操作(转http://ablya.javaeye.com/category/79696?show_full=true)
- 设计模式篇16-访问者模式
- 公布我的PFW防火墙系统完整源代码
- Java四舍五入的几种方式
- 职业规划-嵌入式工程师