MATLAB弹性时程分析法编程
基于MATLAB混凝土框架结构动力弹性时程分析
r h a d e a dpo rm.Th u hsimi v si ey ip twea ay eted n cefc f h tu t e ys e rmo l rg a n o g es cwa e t - u , n ls y  ̄ fet esrcu nh n h ot r
Ab t c: sp p rtk sa ih-tr o ceefa tu tr samo e f 舰 sr t a a e a e neg tsoyc n rt mesr cu ea d 1 、 l . , I
A su e oetbi t— B i sdt sa l hso s
结构 的静 力分 析 、 动力 分析 、 结构 的振 动控 制分析 和地 震 与风激 励 的人 工模 拟均 作 出 相 应 的研 究 , 并将 研究 结果 直 接应 用 到 实 际工 程 中 , 得 一定 取
收稿 日期 :0 11—8 2 1— 22 作者简介 : 陈力宇 (9 6 , , 1 8 一) 男 硕士研 究生 , 主要研究方向为高层、 大跨度结 构理论 。
的工程师们对 MA L B的不断创新 和完善 , TA 使 其从一个简单的矩阵实验平台逐渐发展成为一款
有 极高 通用 性 的运 算 操 作 平 台 。MAT AB已经 L 成为线性代数 、 率论与数理统计 、 概 自动 控 制 理
真工具 。国内外 的许多学 者从事该领域的研究 , 并取 得 了很 多成果 , 如 , 南大 学徐 赵东 等[对 例 东 2 ]
经济预测方法与MATLAB编程第4章 弹性预测法
Q0
P0
3100
2150
(2)预测该市2003年彩电需求量:
Y
Q0 (1
E P )
P0
25000(1 2.42300) 1630
36135
首页
4.2.2收入弹性预测法:
需求的收入弹性表示收入的相对变动对需求量相对变 动的影响,需求的收入弹性系数为:
Ei
Q1 Q0 Q0
I1 I0 I0
首先计算石油消费弹性系数E:
E 1 m Qt Qt1
m t1 Qt1
1 m M t M t1 m t1 M t1
=0.4574
由于我们可查得2006年GDP为211808亿元,并将2005年石 油消耗量作为基期的值,则2006年石油需求量预测值为:
Q2006
Q2005[1
需求弹性价格系数
Ep
Q1 Q0 Q0
P1 P0 Q P0
P0
P Q0
预测模型
Qt
Q0
Q
Q0 (1
Et
P )
P0
Q0 (1 Ep Rp )
【例4.1】
(1)求2002年彩电需求弹性系数:
E Q1 Q0 P1 P0 4900 3100 1630 2150 2.42
MATLAB中的时间序列分析方法
MATLAB中的时间序列分析方法
时间序列分析是一种用于研究随时间变化的数据模式和趋势的方法。对于许多领域,如金融、气象、生物学等,时间序列分析都是至关重要的工具。在MATLAB中,有许多强大的函数和工具箱可以帮助我们进行时间序列的建模、预测和分析。
一、数据的导入和格式化
在进行时间序列分析之前,首先需要将数据导入到MATLAB中,并确保数据的格式正确。通常,时间序列数据是按照时间顺序排列的,例如每天、每月或每年的数据。在导入数据时,需要将时间列作为索引列,并将其转换为适当的格式,以便MATLAB能够正确地处理它。
MATLAB提供了多种函数用于数据的导入和处理,如readtable、csvread、xlsread等。可以根据实际情况选择最适合的函数,并对数据进行格式化处理。二、时间序列的可视化
在进行时间序列分析之前,通常需要先对数据进行可视化,以便更好地理解数据的特征和趋势。
MATLAB中的plot函数可以用来绘制时间序列数据的线图,通过将时间作为横轴,数据值作为纵轴,可以清晰地展示数据的变化趋势。可以使用不同的颜色、线型和标记来区分不同的曲线,以比较不同的时间序列。
除了线图外,MATLAB还提供了其他方法可用于时间序列数据的可视化,如散点图、直方图、箱线图等。根据具体的需求,选择适合的可视化方法进行数据展示和分析。
三、时间序列的平稳性检验
在进行时间序列分析时,一个重要的假设是时间序列数据的平稳性。平稳性是指时间序列的均值、方差和自协方差在时间上保持不变的性质。如果时间序列不是平稳的,那么在建立模型和进行预测时,可能会导致误差和偏差。
如何使用Matlab技术进行时间序列分析
如何使用Matlab技术进行时间序列分析
时间序列分析是一种用于统计和预测时间相关数据的方法。它在各个领域都有
广泛的应用,例如经济学、金融学、气象学等。而Matlab作为一种功能强大的数
值计算和数据可视化工具,能够帮助研究人员更加高效地进行时间序列分析。
一、时间序列的基本概念和特征
时间序列是一组按时间顺序排列的随机变量值,通常用来描述某个变量在不同
时间点上的观测结果。它具有一些基本特征,比如趋势性、季节性和周期性。为了更好地理解这些特征,我们可以通过Matlab对时间序列进行可视化分析。
在Matlab中,可以使用plot函数绘制时间序列的折线图。例如,我们可以生
成一个简单的时间序列数据并绘制其折线图。代码如下:
```matlab
data = [1, 3, 2, 4, 5, 7, 6, 8, 9, 10];
plot(data)
```
通过运行上述代码,我们可以看到在Matlab的图形窗口中显示出了一条折线,它连接了数据中相邻观测点的值。这条折线可以帮助我们观察时间序列的变化趋势。
二、时间序列的平稳性检验
在进行时间序列分析之前,我们首先需要判断时间序列数据是否满足平稳性要求。平稳性是指时间序列在统计特性上不随时间变化的性质。如果时间序列数据是平稳的,那么我们就可以更加自信地进行后续的分析。
Matlab中有多种方法用于判断时间序列的平稳性。其中一种常用的方法是ADF检验(Augmented Dickey-Fuller test)。它的原假设是时间序列具有单位根(非平稳)的特性。
在Matlab中,可以使用adftest函数进行ADF检验。例如,我们可以使用一个具有趋势的时间序列数据进行平稳性检验。代码如下:
用MATLAB做时程分析如何导入地震波 - C9. 软件开发 - 中华钢结构论坛
比如一个地震波,文件名为elcnt.dat,用记事本打开,将其中的一些说明性文字去掉,只剩地震波的数据,并且为方阵形式,保存。在MATLAB中,运行load elcnt.dat,地震波就读入了MATLAB空间了,变量名为elcnt,是一个矩阵形式。通常时程分析时,要求地震波为向量形式,因此再运行elcent=elcent(:),就可以了。比如你的地震波文件是elcentro.dat 那么一句 eqwave = load ('elcentro.dat') 就足够了.wanming 积分 3帖子 3#42005-4-7 22:34 多谢各位指点!wanming 积分 3帖子 3#52005-4-7 22:48 可是下载的地震波都是文本文档,.dat文件是什么?是不是需要自己制作?怎么制作?hillsnow 积分 7帖子 3#62005-4-8 09:57 load命令是按ASCII格式读数据,因此不管扩展名是什么,都是按文本文件读入的。例如,同一个文本文件,存成elcnt.dat,elcnt.txt,elcent.sav,运行load elcnt.dat(或elcnt.txt,elcnt.sav),结果是一样的,都是在matlab空间内生成一个变量elcnt,变量的维数和内容与文本文件内容完全一致。wqfzp 积分 10帖子 16#72006-3-28 15:58 我这段时间也在用matlab做时程分析的编程,其实方法是比较多的,刚开始的时候为了验证程序,就选了一点点,直接拷过去存在一个向量里就可以了,你要不觉得麻烦可以直接把地震波的各个点拷到matlab里面的一个向量里,也可以通过File菜单下的Import导入对应的地震波文件,直接用load命令,要把地震波文件拷到matlab程序下的目录里,比如work目录,才能运行。还有了,编程序比较麻烦,你要是编好的话,可以传上来看看,参考下,谢谢。
使用Matlab进行时间序列预测的常用方法
使用Matlab进行时间序列预测的常用方法
时间序列预测是一种通过对过去观测数据的分析来预测未来数值趋势的技术。
在很多实际应用中,如经济学、金融学、气象学等领域,时间序列预测都具有重要的意义。Matlab作为一款广泛使用的数值计算软件,提供了丰富的工具和函数,
可以帮助我们进行各种时间序列预测分析。本文将介绍一些常用的时间序列预测方法,并使用Matlab进行实例演示。
1. 移动平均法
移动平均法是最简单的时间序列预测方法之一。它通过计算过去一段时间内观
测数据的平均值来预测未来的数值。在Matlab中,可以使用“movmean”函数来计
算移动平均值。
例如,我们有一个包含了某个商品每周销售量的时间序列数据,我们可以使用
移动平均法来预测下一周的销售量。首先,我们需要选择一个合适的移动窗口大小。在Matlab中,可以使用“movmean”函数来计算移动窗口内的平均值。
```matlab
sales = [100, 120, 140, 130, 150, 160, 180, 170, 190, 200];
windowSize = 3;
ma = movmean(sales, windowSize);
nextWeekSales = ma(end);
```
在上述示例中,我们将窗口大小设置为3,通过“movmean”函数计算出每个窗
口内的平均值,并取最后一个值作为下一周的销售量预测。
2. 指数平滑法
指数平滑法是另一种常用的时间序列预测方法。它通过对观测数据进行加权平均来预测未来的数值。指数平滑法将更多的权重放在最近的观测值上,以便更好地捕捉数值变动的趋势。在Matlab中,可以使用“smoothdata”函数来进行指数平滑处理。
Matlab中的时频分析方法
Matlab中的时频分析方法
引言:
时频分析是一种将信号在时间和频率两个维度上进行分析的方法,它能够揭示
信号的瞬时频率变化以及频率成分的随时间的演变。在实际应用中,时频分析常常被用于处理非平稳信号,如音频信号、地震信号等。在Matlab中,有多种时频分
析方法可以使用,本文将介绍其中一些主要的方法并进行比较和分析。
一、短时傅里叶变换(Short-Time Fourier Transform)
短时傅里叶变换是最基本的时频分析方法之一,它将信号分成若干个小时间窗口,然后对每个时间窗口进行傅里叶变换得到频谱,从而获得信号在时间与频率上的变化信息。Matlab中通过调用“spectrogram”函数可以实现短时傅里叶变换,该函数可以设置窗口长度、重叠率等参数,从而对不同信号进行合适的时频分析。
二、连续小波变换(Continuous Wavelet Transform)
连续小波变换是一种将信号与连续小波函数进行卷积的方法,通过在时间和尺
度上对小波函数进行变化来获得时频信息。在Matlab中,可以通过调用“cwt”函数
进行连续小波变换,该函数可以选择不同的小波基函数和尺度参数来实现不同的时频分析方法。连续小波变换由于具有变尺度的特点,可以有效地分析信号的瞬时频率变化。
三、短时自相关函数(Short-Time Autocorrelation Function)
短时自相关函数是通过在时间上对信号进行平移并与自身进行相关分析的方法,可以获得信号的瞬时自相似性。在Matlab中,可以通过调用“xcorr”函数来计算信
利用Matlab进行时间序列分析和预测
利用Matlab进行时间序列分析和预测
时间序列分析和预测是一种重要的数据分析方法,它可以帮助我们了解数据的变化规律和趋势,并根据过去的观察值来预测未来的趋势。其中,Matlab是一个功能强大的数据分析和计算工具,被广泛应用于时间序列分析和预测的实践中。本文将介绍如何利用Matlab进行时间序列分析和预测,并分享一些实用的技巧和方法。
1. 数据准备
在进行时间序列分析和预测之前,首先需要准备好相关的数据。可以通过各种方式获取数据,比如从数据库中提取、通过网络爬虫抓取等。将数据导入Matlab 环境后,需要将数据转换为时间序列对象,以便进行后续的分析和预测。可以使用Matlab中的“timeseries”函数来创建时间序列对象,并设置适当的时间间隔和单位。
2. 可视化分析
在进行时间序列分析和预测之前,通常需要先对数据进行可视化分析,以便全面了解数据的特征和趋势。Matlab提供了丰富的绘图函数和工具,可以方便地绘制各种类型的图表,比如折线图、散点图、直方图等。通过观察这些图表,可以发现数据中的规律和异常点,为后续的分析和预测提供参考。
3. 基本分析
时间序列的基本分析包括平稳性检验、自相关性分析和偏自相关性分析。平稳性是指时间序列在统计意义上不随时间变化而变化,可以使用Matlab中的“adftest”函数来检验时间序列的平稳性。自相关性分析和偏自相关性分析是衡量时间序列内部相关性的方法,可以使用Matlab中的“autocorr”和“parcorr”函数进行计算,并绘制自相关函数和偏自相关函数的图表。
MATLAB在时间序列建模预测及程序代码
表 3 我国发电量及一、二次移动平均值计算表
t
发电总量 yt
一次移动平均,N=6 二次移动平均,N=6
1
676
2
825
3
774
4
716
5
940
6
1159
848.3
7
1384
966.3
8
1524
1082.8
9
1668
1231.8
10
1688
1393.8
11
1958
1563.5
1181.1
12
2031
1708.8
1324.5
13
2234
1850.5
1471.9
for j=1:m-n(i)+1 yhat{i}(j)=sum(y(j:j+n(i)-1))/n(i);
end y12(i)=yhat{i}(end); s(i)=sqrt(mean((y(n(i)+1:m)-yhat{i}(1:end-1)).^2)); end y12,s
1015.1
简单移动平均法只适合做近期预测,而且是预测目标的发展趋势变化不大的情况。 如果目标的发展趋势存在其它的变化,采用简单移动平均法就会产生较大的预测偏差和
892.7
963.9
1015.1
1102.7
MATLAB弹塑性时程分析法编程(参照类别)
MATLAB编程:
format short g;
F(21,14)=0;
xg=[0 600 1100 1500 2100 2500 2900 350 2050 1500 1000 600 200 -700 -1300 -1700 -2000 -1800 -1500 -700 -250 200 -100 0 0 0];
xg1=xg*2200/max(xg);
xg2=diff(xg1);
f(14)=0;f(4)=9000;t=0.05;m=250;c=240;
for i =1:21
f(3)=xg2(i);f(1)=0.05*i-0.05;f(2)=xg1(i);
f(6)=-m*(f(3)-6*f(12)/t-3*f(11))+c*(3*f(12)+f(11)/2*t); f(5)=f(4)+6*m/t^2+3*c/t;
f(7)=f(6)/f(5);
f(9)=3/t*f(7)-3*f(12)-0.5*f(11)*t;
f(8)=6/0.05^2*f(7)-6/0.05*f(12)-3*f(11);
f(13)=f(2)+f(11);
f(14)=f(13)*m;
F(i,:)=f(1,:);
f(10)=f(10)+f(7);f(12)=f(12)+f(9);f(11)=f(11)+f(8);
if abs(f(10))>2&F(1,7)*f(7)>0
f(4)=0;
else f(4)=9000;
end
end
a=max(abs(F(:,13)));
b=max(abs(F(:,14)));
F
a
b
xlswrite('表格2.xls',F)
实验三 利用MATLAB进行时域分析
percentovershoot=100*(Y-C)/C
dcgain( )函数用于求取系统的终值。
③上升时间(risetime)可利用MATLAB中控制语句编制M文件来获得。
要求出上升时间,可以用while语句编写以下程序得到:
C=dcgain(G);
n=1;
while y(n)<C
den = [1 2*sigma*10 100];
damp(den)
sys = tf(num,den);
i=i+1;
step(sys,2)
hold on
end
Eigenvalue Damping Freq. (rad/s)
0.00e+000 + 1.00e+001i 0.00e+000 1.00e+001
如果需要将输出结果返回到MATLAB工作空间中,则采用以下调用格式:
c=step(sys)
此时,屏上不会显示响应曲线,必须利用plot()命令查看响应曲线。plot可以根据两个或多个给定的向量绘制二维图形。
【范例3-2】已知传递函数为:
利用以下MATLAB命令可得阶跃响应曲线如图3-2所示。
>> num=[0,0,25];
lab6='zunibi = 1.25';text(0,35,0.8,lab6)
Matlab 时程分析
Matlab 时程分析
0 动力平衡方程及相关参数取值
波浪、风载作用下的单桩动力反应计算(把结构简化为质点剪切型)
wave wind []{}[]{}[]{}M u C u K u F F ∙∙∙
++=+
式中:u 为结构水平位移;[]M 桩-结构集中质量矩阵;[][][]P S C C C =+体系的阻
尼矩阵;
体系的阻尼矩阵由结构和土体的阻尼矩阵集成,其中结构的阻尼按瑞雷阻尼理论,土
体阻尼由材料阻尼和辐射阻尼组成。 [][][]P S K K K =+体系的刚度矩阵;体系的刚度矩阵由结构和土体的刚度矩阵集成,
土体刚度由动力P-Y 曲线对Y 求导得到。
地震、波浪、风载作用下的单桩动力反应计算
1 自由场地震分析(远离桩,取单位面积土柱)
[]{}[]{}[]{}[]{}f f f f f f f g M u C u K u M E u ∙∙∙∙∙
++=- 土的刚度矩阵:
;/f i i i k G h =
土的阻尼矩阵:
;离桩较远,可采用刚度比
例阻尼
2 桩土相互作用地震分析
[]{}[]{}[]{}
[]{}[]{}[]{}
s s f f g wave wind M u C u K u M E u F F C u K u ∙∙∙∙∙∙++=-++++
也可写为
[]{}[]{}[]{}[]{}[]{}
[]{}P S P S f f g wave wind M u C u C u u K u K u u M E u F F ∙∙∙∙∙∙∙++-++-=-++
[]K 桩-结构集中质量矩阵;[]P C 结构的阻尼矩阵;[]S C 土体的阻尼矩阵;
Matlab中的时间序列处理方法与实例分析
Matlab中的时间序列处理方法与实例分析
时间序列分析是一种在经济学、金融学、气象学、工程学等领域广泛应用的数据分析方法。Matlab作为一种强大的科学计算软件,为处理时间序列提供了丰富的功能和工具。
一、时间序列分析的基本概念
时间序列是按照时间顺序排列的一系列数据观测值的集合。在时间序列中,每个观测值都与某个特定的时间点相关联。时间序列分析的目标是通过统计方法和模型建立时间序列之间的关系,从而获得有关未来发展趋势和规律的信息。
二、 Matlab中的时间序列分析函数
1. tsmovavg函数
tsmovavg函数是Matlab中常用的时间序列平均函数,用于计算时间序列数据的移动平均值。移动平均值是一种常用的平滑数据的方法,可以减少数据的尖锐变动,提取趋势信息。
2. trendfilter函数
trendfilter函数用于分离时间序列数据中的趋势成分。时间序列数据常常包含长期和短期趋势成分,利用trendfilter函数可以分离出这两个成分,从而更好地理解数据的长期和短期变动特征。
3. arima函数
arima函数是Matlab中用于建立和拟合ARIMA模型的函数。ARIMA模型是一种经典的时间序列模型,能够对时间序列数据进行预测和分析。通过arima函数,可以估计ARIMA模型的参数,进行模型拟合和预测等操作。
三、时间序列分析实例
假设我们有一组销售数据,希望利用时间序列分析来预测未来销售情况。首先,我们可以使用tsmovavg函数计算销售数据的三期移动平均值,以平滑数据,减少
噪声干扰。代码如下:
matlab实现stamps方法
matlab实现stamps方法
(原创实用版3篇)
篇1 目录
1.STAMPS 方法简介
2.MATLAB 实现 STAMPS 方法的步骤
3.STAMPS 方法在 MATLAB 中的应用实例
4.总结
篇1正文
一、STAMPS 方法简介
STAMPS(Simultaneous Time-domain Analysis and Modeling for Partially Observable Systems)方法是一种同时处理时域分析和建模的部分观测系统方法,主要用于解决部分观测系统的建模和控制问题。该方法在工程领域有广泛的应用,如自动化控制、信号处理等。
二、MATLAB 实现 STAMPS 方法的步骤
1.准备数据:首先需要收集系统的部分观测数据,包括输入、输出和状态信息。
2.建立模型:根据系统的部分观测数据,使用 STAMPS 方法建立系统的时域模型。
3.分析模型:对建立的时域模型进行分析,如求解系统的传递函数、稳定性分析等。
4.控制器设计:根据系统的时域模型和控制要求,设计合适的控制器。
5.仿真验证:使用 MATLAB 对控制器进行仿真验证,评估控制器的性能。
三、STAMPS 方法在 MATLAB 中的应用实例
下面以一个简单的线性时不变系统为例,展示如何使用 MATLAB 实现STAMPS 方法:
假设有一个线性时不变系统,其输入为 u(t),输出为 y(t),状态变量为 x(t),系统的输入、输出和状态方程分别为:
u(t) = u0 + tau * epsilon * x(t)
y(t) = c0 * x(t) + z(t)
MATLAB弹性时程分析法编程
IP血]■
二,集柱语言老議
时间安排
计算书:课程设计计算书(题一)
根据加速度调幅公式:a。= a g ma/ a(t j)/a m
a m= 290Gal 二2900(mm/s2)
得:a° 二350 a(tj / 2900 二7a(tJ /58
a(tj =[0 600 1100 150021002500 2900350 2050
15001000600200 -700 -1300-1700 -2000 -1800-1500 -
700-250200 -100 0 0 0];
所以经调幅后为 a0=[0 72.6 133.1 181.5 254.1 302.5 350.9 42.4 248.1 181.5 121 72.6 24.2 -84.7 -157.3 -205.7 -242 -217.8 -181.5 -84.7 -30.3 24.2-12.1 0 0 0 ]
U ; -U ;二 72.60 72.6
U 3 -U ; = 133.1 72.6 二 60.5
依次类推可以求出地面运动加速度的差值。
k = 9000kN /m , m = 250kN s 2
/m
代入可以算得c= 240kN s/m 一、表格第一行数据计算:
K 「二 k i 6m/t 2
3c/t , t=0.05s
代入得 K. =623400N/m
△ P …m(^U ;
-6u '
/t-3U ;) c(3U '
U / t/2)
= -250 72.6 = -18150N
K . AU =△ P
△U =△ P /K . = -18150/623400= -0.03mm 起始时刻时:U - 0 U 0 U " - 0
MATLAB在时间序列建模预测及程序代码
M tw
=
w1 yt
+ w2 y2 + L + wN yt−N +1 w1 + w2 + L + wN
,t
≥
N
(4)
式中 M tw 为 t 期加权移动平均数;wi 为 yt−i+1 的权数,它体现了相应的 yt 在加权平均数
中的重要性。
利用加权移动平均数来做预测,其预测公式为
yˆt+1 = M tw
差。预测标准误差最小者为好。
例 1 某企业 1 月~11 月份的销售收入时间序列如表 1 示。试用一次简单滑动平
均法预测第 12 月份的销售收入。
表 1 企业销售收入
月份 t
1
2
3
4
5
6
销售收入 yt 月份 t
533.8 7
574.6 8
606.9 9
649.8 10
705.1 11
772.0
销售收入 yt 816.4
(3)混合模型
yt = Tt ⋅ St + Rt yt = St + Tt ⋅ Ct ⋅ Rt 其中 yt 是观测目标的观测记录, E(Rt ) = 0 , E(Rt2 ) = σ 2 。 如果在预测时间范围以内,无突然变动且随机变动的方差σ 2 较小,并且有理由认
为过去和现在的演变趋势将继续发展到未来时,可用一些经验方法进行预测。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算书:课程设计计算书(题一)
根据加速度调幅公式:m i a t a a a /)(max ,00*=
)/(29002902s mm Gal a m ==
得:58/)(72900/)(3500i i t a t a a =*=
)(i t a =[0 600 1100 150021002500 2900350 2050
15001000600200 -700 -1300-1700 -2000 -1800-1500 -700-250200 -100 0 0 0];
所以经调幅后为0a =[0 72.6 133.1 181.5 254.1 302.5 350.9 42.4 248.1 181.5 121 72.6 24.2 -84.7 -157.3 -205.7 -242 -217.8 -181.5 -84.7 -30.3 24.2-12.1 0 0 0 ]
6.7206.72''1''2=-=-U U
5.60
6.721.133''2''3=-=-U U
依次类推可以求出地面运动加速度的差值。 因为km c 2=ζ,08.0=ζ ,
m kN k /9000=, m s kN m /2502⋅=
代入可以算得m s kN c /240⋅=
一、表格第一行数据计算:
t c t m k K i i /3/62++=*, t=0.05s
代入得m N K i /623400
=* )△△2
/3()3/6(''''''''t U U c U t U U m P i i g i *++---=* N 18150-6.72250-=*=
**=i i P U K △△
mm K P U i i 03.0623400/18150
/-=-==**△△ 起始时刻时:0=U 0'=U 0''=U
因为'''2''3/6/6i i U t U t U U -*-*=△△
所以7205.0/)03.0(62''1
-=-*=U △
2/'''''t U t U U i *+*=△△
所以8.12/05.072'1-=*-=U △
相对加速度=)/(0002''''s mm U U g =-=-
层间剪力=N U U m g
0)(''''=- 二、表格第二行数据计算:
03.012-==U U △
72''1''2-==U U △
8.1'1'2-==U U △
)/(5.606.721.1332''s mm U g =-=△
)2/3()3/6(''''''''t U U c U t U U m P i i i i g i *++---=*△△
=-250[60.5-6*(-1.8)/0.05-3*(-72)]+240*[3*(-1.8)+(-72)*0.05/2] =-124853N
mm K P U i i 2.0623400/124853
/2-=-==**△△ 因为'''2''3/6/6i i U t U t U U -*-*=△△
所以)72(305.0/)8.1(605.0/620.02''2
-*--*-*-=U =-48)/(2s mm
2/'''''2t U t U U i *+*=△△
=-72*0.05-48*0.05/2=-4.8)/(s mm
相对加速度='
'''U U g +
=72.6-72=0.6)/(2s mm
层间剪力=)(''''U U m g +
=250*0.6=150N
依次类推,每次以上一行的数据作为起始值来计算下一行的数值。可以得出所有数据。
MATLAB编程“
format short g;
F(21,14)=0;
xg=[0 600 1100 1500 2100 2500 2900 350 2050 1500 1000 600 200 -700 -1300 -1700 -2000 -1800 -1500 -700 -250 200 -100 0 0 0];
xg1=xg*350/max(xg);
xg2=diff(xg1);
f(14)=0;f(4)=9000;t=0.05;m=250;c=240;
for i =1:21
f(3)=xg2(i);f(1)=0.05*i-0.05;f(2)=xg1(i);
f(6)=-m*(f(3)-6*f(12)/t-3*f(11))+c*(3*f(12)+f(11)/2*t);
f(5)=f(4)+6*m/t^2+3*c/t;
f(7)=f(6)/f(5);
f(9)=3/t*f(7)-3*f(12)-0.5*f(11)*t;
f(8)=6/0.05^2*f(7)-6/0.05*f(12)-3*f(11);
f(13)=f(2)+f(11);
f(14)=f(13)*m;
F(i,:)=f(1,:);
f(10)=f(10)+f(7);f(12)=f(12)+f(9);f(11)=f(11)+f(8);
end
a=max(abs(F(:,13)));
b=max(abs(F(:,14)));
F
a
b
xlswrite('表格1.xls',F)
输出结果: