当前位置:文档之家› 地震工程作业哈工大 MATLAB程序

地震工程作业哈工大 MATLAB程序

地震工程作业哈工大  MATLAB程序
地震工程作业哈工大  MATLAB程序

地震工程大作业

哈工大李金平

弹性反应谱

原创性声明,主程序由本人独立编写完成,支持各种检验。所选地震动RSN2345CHICHI.AT2 peer索取号:2345

:

010203040506070 -0.25

-0.2

-0.15

-0.1

-0.05

0.05

0.1

0.15

0.2

0.25

时间 (s)

(

m

/

s

2

)

位移反应谱

局部放大

1234

5678910

周期T (s)

位移 (m m )

1

1.02

1.04

1.06 1.08

1.1

1.12

9.2

9.259.39.359.49.459.5

9.559.69.659.7周期T (s)

位移 (m m )

求比值

1

2

3

4

567

8

9

10

0.940.950.960.970.980.991

1.011.021.031.04

周期T (s)

比值

绝对加速度反应谱

局部放大

0.2

0.4

0.6

0.8

1 1.

2 1.4

1.6

1.8

2

00.10.20.30.40.50.60.70.80.91周期T (s)

S a (m /s 2)

-0.25

-0.2

-0.15

-0.1

-0.05

00.050.1

0.15

0.2

0.25

0.150.2

0.250.3

0.35

0.4

0.45周期T (s)

S a (m /s 2

)

求比值进行比较

速度反应谱

1

2

3

4

567

8

9

10

0.940.950.960.970.980.991

1.011.021.031.04

周期T (s)

比值

1

2

3

4

567

8

9

10

00.010.020.030.040.050.060.07

0.080.090.1周期T (s)

速度 (m /

s )

局部放大观察差异

求比值进行比较。

00.020.04

0.060.080.10.12

-4

周期T (s)

速度 (m /s )

1234

5678910

0.70.8

0.91

1.1

1.2

1.3

周期T (s)

比值

结论:

对比:拟合效果非常好,短周期0s

近30%,加速度和位移误差都在3%以内,周期0.2s

理解:本次计算的反应谱是在给定的地震动下,具有相同阻尼比(5%)不同周期的单自

由度结构的线弹性反应幅值,得到的速度、加速度、移幅值随周期变化的三条曲线。

a1(i)=max(abs(a+xg'));

v1(i)=max(abs(v));

x1(i)=max(abs(x));

用法:今后给定一个结构,我们可以计算其周期T1,然后在相应的反应谱图表里面找到

对应的谱值如Sa 、Sv、Sd,即为我们所要求得的该结构在指定地震动作用下最大动力反应,将动力分析简化成为静力计算,简单方面。(弹性范围内)

主程序DZZY.m

clear

clc

M=1;%[]

fid=fopen('RSN2345CHICHI.txt');%%读取地震动加速度记录

xg=9.8*fscanf(fid,'%f');

fclose(fid);

n=length(xg);

F=-M*xg'; %生成地震力

for i=1:1000

tn(i)=0.01*i;

K=2*pi*2*pi/tn(i)/tn(i);

lamda=2*pi/tn(i);

dt=0.005;

t=(0:0.005:(n-1)*0.005)';

x0=0;

v0=0;

a0=0;

ksi=0.01*5;

DAMPER=2*ksi*lamda*M;

[x,v,a]=newmarkb(M,K,DAMPER,1,F,x0,v0,a0,dt,n);

a1(i)=max(abs(a+xg'));

v1(i)=max(abs(v));

x1(i)=max(abs(x));

end

test=importdata('a2.txt'); %%读取Seismosignal绝对加速度a2=test(:,2)*9.8;

testv=importdata('v2.txt'); %%读取Seismosignal速度

v2=testv(:,2);

testd=importdata('x2.txt'); %%读取Seismosignal相对位移x2=testd(:,2);

tn=0.01:0.01:10;

figure (1)

plot(tn,x1*1000,'r--')

xlabel('周期T (s)')

ylabel('位移(mm)')

hold on

plot(tn,x2*1000,'linewidth',2)

legend('matlab相对位移','Seismosignal相对位移')

%

%

figure (2)

plot(tn,a1,'r--','linewidth',1)

xlabel('周期T (s)')

ylabel('Sa (m/s^2)')

hold on

plot(tn,a2,'k','linewidth',2)

legend('matlab-Sa','Seismosignal-Sa')

figure (3)

plot(tn,v1)

xlabel('周期T (s)')

ylabel('速度(m/s)')

hold on

plot(tn,v2,'linewidth',2)

legend('matlab-Sv','Seismosignal-Sv')

hold off

figure (4)

hold on

plot(t,xg)

legend('地震动加速度')

xlabel('时间(s)')

ylabel('加速度(m/s^2)')

for j=1:1000 %求比值

ca(j)=a2(j)/a1(j);

cv(j)=v2(j)/v1(j);

cx(j)=x2(j)/x1(j);

end

figure (6)

plot(tn,ca)

legend('Seismosignal加速度/MATLAB加速度比值') xlabel('周期T (s)')

ylabel('比值')

figure (7)

plot(tn,cv)

legend('Seismosignal速度/MATLAB速度比值')

xlabel('周期T (s)')

ylabel('比值')

figure (8)

plot(tn,cx)

legend('Seismosignal位移/MATLAB位移比值')

xlabel('周期T (s)')

ylabel('比值')

子程序newmarkb.m

function [x,v,a]=newmarkb(M,K,C,N,P,x0,v0,a0,dt,RecordLength) % newmark-beta method

% obtain the response of the dynamic system

% [x,v,a]=newmarkb(M,K,C,N,P,x0,v0,a0,dt,RecordLength) % M - mass matrix

% K - stiffness matrix

% C - damping matrix

% N - DOF

% P - loads

% x0 - initial displacement

% v0 - initial velocity

% a0 - initial acceleration

% dt - interval

% RecordLength - number of sampling points

x=zeros(N,RecordLength);

v=zeros(N,RecordLength);

a=zeros(N,RecordLength);

x(:,1)=x0;

v(:,1)=v0;

a(:,1)=a0;

deta=0.50;

alpha=0.25;

a0=1/alpha/dt^2;

a1=deta/alpha/dt;

a2=1/alpha/dt;

a3=1/2/alpha-1;

a4=deta/alpha-1;

a5=dt*(deta/alpha-2)/2;

a6=dt*(1-deta);

a7=deta*dt;

K_=K+a0*M+a1*C;

iK=inv(K_);

for i=1:RecordLength-1

P_(:,i+1)=P(:,i+1)+M*(a0*x(:,i)+a2*v(:,i)+a3*a(:,i))+C*(a1*x(:,i)+a4* v(:,i)+a5*a(:,i));

x(:,i+1)=iK*P_(:,i+1);

a(:,i+1)=a0*(x(:,i+1)-x(:,i))-a2*v(:,i)-a3*a(:,i);

v(:,i+1)=v(:,i)+a6*a(:,i)+a7*a(:,i+1);

end

哈工大 电机学 MATLAB 仿真 实验报告

基于MATLAB的电机学计算机辅助分析与仿真 实验报告 班级: 学号: 姓名: 完成时间:

一、实验内容 1.1单相变压器不同负载性质的相量图 通过MATLAB 画出单相变压器带感性,阻性,容性三种不同性质负载的变压器向量图 1.2感应电机的S T -曲线 通过MATLAB 画出三相感应电动机的转矩转差率曲线 二、实验要求 2.1单相变压器不同负载性质的相量图 根据给定的仿真实例画出负载相位角30,0,302-=j 三种情况下得向量图,观察电压大小与相位的关系,了解总结负载性质不同对向量图的影响 2.2感应电机的S T -曲线 根据给定的实例,画出3.1~3.1-=s 的S T -曲线,了解感应电机临界转差率的大小和稳定工作区间的大小,给出定性分析 三、实验方法 3.1单相变压器不同负载性质的相量图 1.单相变压器不同负载性质的相量图 (1)先画出负载电压'2U 的相量; (2)根据负载的性质和阻抗角画出二次电流(规算值)的相量 (3)在2U 上加上一个与电流方向相同的压降,其大小为二次电流规算值'2I 与二次漏电阻规算值'2R 之积;再加上一个超前电流方向?90的压降,其大小为二次电流'2I 规算值与二次漏电抗规算值'2χ之积; (4)根据上一步结果连线,得出'2E ; (5)超前'2E 方向?90画出m Φ; (6)根据励磁电阻与电抗的大小得出励磁阻抗角,并超前m Φ一个励磁阻抗角的大小得出m I 的方向; (7)根据平行四边形法则,做出'2I -与m I 的和,即为1I ; (8)根据'21E E =得出1E ,并得出1E -。

(9)在1E -上加上一个与电流方向相同的压降,其大小为一次电流1I 与一次漏电阻1R 之积;再加上一个超前电流方向?90的压降,其大小为一次电流1I 与一次漏电抗1χ之积; (10) 根据上一步结果连线,得出1U ; 3.2感应电机的S T -曲线 实验采用matlab 对转矩转差率曲线进行仿真。 由转矩转差率关系公式知, 2212 2122 1)()(x c x s r c r s r U m T s s +++?Ω= 只有s 为自变量,其他参数均为已知。 编程时,先取s 在0.01-1.3正区间的S T -,进行绘图;再取相应负区间对S T -绘图;最后加入(0,0) 四、实验源程序(1分) 4.1单相变压器不同负载性质的相量图 见附录 4.2感应电机的T-S 曲线 %T-S 曲线绘制 %定义常量 R2 = 0.04; R1 = 0.06; M1 = 3; U1 = 380; W = 2*pi*1485/60; X1 = 0.27; X2 = 0.56; C = 1+X1/16.4; %画出s=0.01~1.3的T-S 曲线 s = 0.01:0.01:1.3; T=ones(1,length(s));

(完整word版)哈工大matlab期末考试题试题及答案(95分)分解,推荐文档

春季学期MATLAB期末作业 学院:机电工程学院 专业:机械制造设计及其自动化 学号: 班号: 姓名:

2013年春季学期 MATLAB 课程考查题 姓名: 学号: 学院:机电学院 专业:机械制造 一、必答题: 1.matlab常见的数据类型有哪些?各有什么特点? 常量:具体不变的数字 变量:会根据已知条件变化的数字 字符串:由单引号括起来的简单文本 复数:含有复数的数据 2.MATLAB中有几种帮助的途径? (1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器; (2)help命令:在命令窗口键入“help”命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息; (3)lookfor命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数 (4)模糊查询:输入命令的前几个字母,然后按Tab键,就可以列出所有以这几个字母开始的命令和函数。 注意:lookfor和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help命令显示详细信息。 3.Matlab常见的哪三种程序控制结构及包括的相应的语句? 1.顺序结构:数据输入A=input(提示信息,选项) 数据输出disp(X) 数据输出fprintf(fid,format,variables) 暂停pause 或pause(n) 2.选择结构: If语句: if expression (条件) statements1(语句组1) else statements2(语句组2)

(完整版)哈工大matlab期末考试题试题及答案(95分)分解,推荐文档

建议收藏下载本文,以便随时学习! 春季学期MATLAB期末作业 学院:机电工程学院 专业:机械制造设计及其自动化 学号: 班号: 姓名: 我去人也就有人!为UR扼腕入站内信不存在向你偶同意调剖沙

2013年春季学期 MATLAB 课程考查题 姓名: 学号: 学院: 机电学院 专业: 机械制造 一、 必答题:1.matlab 常见的数据类型有哪些?各有什么特点? 常量:具体不变的数字 变量:会根据已知条件变化的数字 字符串:由单引号括起来的简单文本 复数:含有复数的数据 2.MATLAB 中有几种帮助的途径? (1)帮助浏览器:选择view 菜单中的Help 菜单项或选择Help 菜单中的 MATLAB Help 菜单项可以打开帮助浏览器; (2)help 命令:在命令窗口键入“help” 命令可以列出帮助主题,键入 “help 函数名”可以得到指定函数的在线帮助信息; (3)lookfor 命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列 与给定关键词相关的命令和函数 (4)模糊查询:输入命令的前几个字母,然后按Tab 键,就可以列出所有以 这几个字母开始的命令和函数。 注意:lookfor 和模糊查询查到的不是详细信息,通常还需要在确定了具体 函数名称后用help 命令显示详细信息。 3.Matlab 常见的哪三种程序控制结构及包括的相应的语句? 1.顺序结构:数据输入A=input(提示信息,选项) 数据输出disp(X) 数据输出fprintf(fid,format,variables) 暂停pause 或 pause(n) 2.选择结构: If 语句: if expression (条件) statements1(语句组1) else statements2(语句组2)建议收藏下载本文,以便随时学习!我去人也就有人!为UR扼腕入站内信不存在向你偶同意调剖沙

哈工大材料力学大作业--matlab编程

H a r b i n I n s t i t u t e o f T e c h n o l o g y 材料力学上机作业 课程名称:材料力学 设计题目:应力状态分析 院系:机电学院 班级: 分析者: 学号: 指导教师:张桂莲 设计时间:2013年6月18日 哈尔滨工业大学

材料力学上机课设计说明书 一, 设计题目 题目7 应力状态分析 输入: 1. 平面应力状态输入: x y xy σστ(,,);某截面方位角α 2. 空间应力状态输入: ,x y z xy yz zx σσστττ(,,,,) 输出: 1. 输出主应力123σσσ(,,) 2. 最大切应力(13 max 132 σσττ-== ) 3. 如为平面应力状态则需要输出方位角α斜截面上的应力αα στ、及主方向角*σα 4. 画出应力圆示意图 二, 程序计算设计过程 1. 平面应力状态分析 对于任意平面应力状态,有 max min σσ = 2x y σσ+± 主应力为: 1max 23min ,0,σσσσσ=== 并且由 2tan 2xy x y στασσ=- 可求得主应力方向角 1 3 σσ αα、。 对于任意一个方位角α,有: = cos 2sin 222 sin 2cos 22 x y x y xy x y xy αασσσσσατα σστατα +++ +-=- +

从而,输入任意角α,即可求得该截面的应力状态 ααστ、 并且 ααστ、都是关于α的函数,上式即为应力圆的参数方程,参数为α。 将α从0到pi 取一系列的值,则可以求出一系列的ααστ、,在坐标系中找 到对应点,连接即可作出应力圆。 2. 三向应力状态分析 解特征方程 32 1230I I I σσσ-+-= 即可求出主应力123σσσ、、 其中: 123|||||||| x y z x yx y zy z xz xy y yz z zx x x yx zx xy y zy xz yz z I I I σσσστστσττστστσστττστττσ=-+??????=++ ? ? ? ???????? ?= ? ??? 再由 13 max 132 σσττ-== 可求得最大切应力。 求解三向应力圆: 三个圆121323C 、C 、C 的圆心分别为: 231312122313,0,0,0222C C C σσσσσσ+++?????? ? ? ??????? 、、 半径非别为: 23 13 12 122313r = ,r = ,r = 2 2 2 σσσσσσ--- 由此可以求出三个应力圆的方程,从而作出三向应力圆。 三, 程序代码 reg=input('选择应力状态方式(1或2):');%1表示平面应力状态,2表示空间应力状态 if reg==1 %选择平面应力状态分析 %输入已知量,应力单位为MPa ,转角单位为rad

哈工大_Matlab__2013年春季学期《MATLAB语言及应用》试题答案

2013年春季学期 《MATLAB语言及应用》课程试卷 姓名: 学号: 学院: 专业: 必答题 1.常用的matlab界面由哪些窗口组成,各有什么主要作用?(4分) (1)菜单和工具栏功能:【File】菜单主要用于对文件的处理。【Edit】菜单主 要用于复制、粘贴等操作,与一般Windows程序的类似,在此不作详细介绍。【Debug】菜单用于调试程序。【Desktop】菜单用于设置主窗口中需要打开的窗口。【Window】菜单列出当前所有打开的窗口。【Help】菜单用于选择打开不同的帮助系统。 (2)命令窗口功能:用于输入命令并显示除图形以外的所有执行结果 (3)历史命令窗口功能:主要用于记录所有执行过的命令 (4)当前工作目录窗口功能:对文件和目录进行操作 (5)工作空间窗口功能:查看、载入和保存变量 2.如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么 区别?(2分) 方法一:在MATLAB命令窗口中输入editpath或pathtool命令或通过【File】/|【SetPath】菜单,进入“设置搜索路径”对话框,通过该对话框编辑搜索路径。 方法二:在命令窗口执行“path(path,…D:\Study ?)”,然后通过“设置搜索路径”对话查看“D:\Study”是否在搜索路径中。 方法三:在命令窗口执行“addpath D:\Study- end”,将新的目录加到整个搜索路径的末尾。如果将end改为begin,可以将新的目录加到整个搜索路径的开始。 区别:当前文件目录是正在运行的文件的目录,显示文件及文件夹的详细信息,且只有将文件设置为当前目录才能直接调用。搜索路径中的文件可以来自多个 不同目录,在调用时不用将其都设置为当前目录,为同时调用多个文件提供 方便。 3.有几种建立矩阵的方法?各有什么优点?(4分) 1.在命令窗口中直接输入优点:适合输入不规则和较小的矩阵 2.通过语句和函数生成矩阵优点:适合输入规则且较大的矩阵 3.通过M文件来建立矩阵,从外部数据文件中导入矩阵 优点:方便创建和导入大型矩阵 4.说明break语句、continue语句和return语句的用法。(3分)

哈工大matlab选修课试题

2015年春季学期 《MATLAB语言及应用》课程试卷 姓名:李清蔚 学号:11408010304 学院:机电学院 专业:机械设计制造及其自动化 (1)请概括Matlab中冒号(:),逗号(,),分号(;)的功能?(6分) :用于生成一位数组,表示一位数组的全部元素或多维数组的某一维的全部元素 ,用于要显示计算结果的命令之间的分隔符,用于输入变量之间的分隔符,用于数组行元素之间的分隔符。 ;用于不显示计算结果命令行的结尾,用于不显示计算结果命令之间的分隔符,用于数组元素行之间的分隔符。 (2)a=[1 -6 0 0.45 0 100],b=[0 1.5 4 0 0.5 -34],请问在进行逻辑运算时,a、b分别相当于什么样的逻辑量?a与b的逻辑与、逻辑或都分别是什么?(4分) 元素方式的逻辑变量a&b=[0 1 0 0 0 1], a|b=[1,1,1.1,1] (3)有几种建立矩阵的方法?各有什么优点?(4分) 直接输入矩阵,eye()生成单位矩阵,通过M文件建立矩阵,通过外部数据文件导入矩阵 (4)生成一个7阶的魔方矩阵A,再采用相应的MATLAB命令,将其全部奇数行提取出来,赋给矩阵B,给出执行语句以及计算结果。(4分) A=magic(7) table=[1 3 5 7]; [n,len]=size(table); B=A(table(1),:); for i=2:len B=[B;A(table(i),:)]; End

B= 30 39 48 1 10 19 28 46 6 8 17 26 35 37 13 15 24 33 42 44 4 22 31 40 49 2 11 20 (5)生成5阶魔方矩阵A,再分别计算A中元素的平方、A矩阵的平方,给出执行语句以及计算结果。(5分) A=magic(5) B=A.^2 C=A^2 A = 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 B = 289 576 1 64 225 529 25 49 196 256 16 36 169 400 484 100 144 361 441 9 121 324 625 4 81 C = 1090 900 725 690 820 850 1075 815 720 765 700 840 1145 840 700 765 720 815 1075 850 820 690 725 900 1090 (6)生成矩阵 8412 6115 689 a ?? - ?? =-- ?? ?? - ??,计算a的行列式、逆矩阵,给出执行语句以 及计算结果。(5分) b = 784 c = 0.0753 0.0765 0.1429 0.0306 0.1837 0.1429 -0.0230 0.1122 0.1429

哈工大机械设计电算实验(matlab2010)

哈工大机械设计电算实验(matlab2010)

机械设计电算实验 一:普通V带传动设计内容和任务 1、普通V带传动设计内容 给定原始数据:传递的功率P,小带轮转速n,传动比i及工作条件。 设计内容:带型号,基准长度Ld,根数Z,传动中心距a,带轮基准直径dd1、dd2,带轮轮缘宽度B,初拉力F0,和压轴力FQ。 2、CAD任务: (1)编制V带传动设计程序框图。 (2)编制V带传动设计原程序。 (3)按习题或作业中数据运行程序,要求对每一组数据各按三种V带型号计算,对每一种带型号选三种小带轮直径进行计算并输出所有结果。

二、变量标识符 kka 3 工作情况系数K A n r/min 4 小带轮转速n 1 5 工作机载荷特性载荷类型 6 原动机类型原动机类型 7 工作年限a年b班 8 带型号V带带型 dd1 mm 9 小带轮基准直径d d1 dd2 mm 10 大带论基准直径d d2 11 带速v v m/s vmax m/s 12 最大带速v max a0 mm 13 预估中心距a ld mm 14 基准长度L d 15 实际中心距 a aa mm r 度 16 小带轮包角α 1 17 V带根数Z z 18 基本额定功率P po kw pp0 kw 19 功率增量ΔP ki 20 传动比系数K i

三、程序框图

四、源程序与其说明 程序说明: 本程序用Matlab2010b软件编制,主要针对机械设计大作业上的题型设计。使用时只要打开m 文件,并点击运行,按照提示进行即可。首先输入原始数据,然后根据自己的需要选择带型,中心距即可得到设计结果,无需再查找资料,方便高效,计算过程如有错误会进行提示,并返回到输入处进行改正。而且该程序可以直接计算下一带轮直径或者计算下一带型,比较方便。源程序如下(先复制到记事本,再新建一个m文件,粘贴) clear all; disp('欢迎使用本程序,请输入V带传动设计的原始数据'); p=input('电动机工作功率(kw) P='); n=input('电动机满载转速(r/min) nm='); i=input('第一级传动比 i1='); a=input('请输入最短工作工作年限 a年b班 a='); b=input(' b='); disp('是否反复起动、正反转频繁或工作条件恶劣'); ka1=input('是请输入1,否请输入0。请输入:'); disp('原动机类型:'); disp('I类原动机包括普通笼型交流电动机,同步电动机,'); disp(' 直流电动机(并激),n>=600r/min的内燃机') disp('II类原动机包括交流电动机(双笼型、滑环式、单相、大转差率),'); disp(' 直流电动机(复激、串激),单缸发动机,n<=600r/min的内燃机') d1=input('请选择原动机的类型,输入1或2。请输入:'); disp('载荷类型:'); disp('1、载荷平稳;2、载荷变动小;3、载荷变动较大;4、载荷变动很大。'); e1=input('请选择载荷类型请输入:'); c=[3 710 38 80;2.2 940 28 60;3 960 38 80;4 960 38 80]; if p==3&&n==710 d=38; e=80;

哈工大matlab考查题解答

2013年春季学期 MATLAB 课程考查题 一、必答题: 1.matlab常见的数据类型有哪些?各有什么特点? (1)numeric(数值):包括整数和浮点数,缺省状态下matlab将所有的数看 作是双精度的浮点数。 (2)char(字符):字符串必须用单引号括起来,是由多个字符组成的字符行 向量。 (3)logical (逻辑):仅有TRUE和FALSE两个值,一般用于关系运算或逻辑 运算。 (4)cell (单元、细胞、元胞):可以把不同类型的数据纳入到一个变量中,不 要求相同的数据类型,下标用大括号括起来。 (5)struct (结构):结构是包含已命名“数据容器”或字段的数组。结构中的 字段可以包含任何数据。 2.MATLAB中有几种帮助的途径? (1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的 MATLAB Help菜单项可以打开帮助浏览器; (2)help命令:在命令窗口键入“help”命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息; (3)lookfor命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给 定关键词相关的命令和函数 (4)模糊查询:输入命令的前几个字母,然后按Tab键,就可以列出所有以 这几个字母开始的命令和函数。 3.Matlab常见的哪三种程序控制结构及包括的相应的语句? (1)顺序结构:数据的输入-A=input(提示信息,选项); 数据的输出-disp(输出项) 程序的暂停-pause(延迟秒数)

(2)选择结构:if 条件语句组;else 语句组;end Switch 表达式case 值1 语句组1;……otherwise 语句组n; end (3)循环结构:while 条件语句组;end for(条件);end do 语句组while 循环语句组;end 4.命令文件与函数文件的主要区别是什么? 答:(1)命令文件是一系列命令的组合,函数文件的第一行必须用function 说明; (2)命令文件没有输入参数,也不用返回参数,函数文件可以接受输入参数,也可以返回参数; (3)命令文件处理的变量为工作空间变量,函数文件处理的变量为函数内部的局部变量,也可以处理全局变量。 5.什么是全局变量和局部变量? 答:全局变量是没有定义存储类型的外部变量,其作用域是从定义点到程序结束,省略了存储类型符,系统将默认为是自动型 局部变量也称为内部变量。局部变量是在函数内作定义说明的。其作用域仅限于函数内,离开该函数后再使用这种变量是非法的。 如果一个函数内的变量没有特别声明,那么这个变量只在函数内部使用,即为局部变量,如果两个或多个函数公用一个变量(或者说在子程序中也要用到主程序中的变量,注意不是参数),那么可以用global来将它声明为全局变量。 全局变量的使用可以减少参数传递,合理利用全局变量可以提高程序执行效率。如果需要用到其他函数的变量,就要利用在主程序与子程序中分别声明全局变量的方式实现变量的传递,否则函数体内使用的都为局部变量。 6.数据插值和曲线拟合区别? 答:有这样一组数据(Xi,Yi),i=1,2,3,。。。。。,寻找Y与X之间的关系Y=F(X),就要根据这组数据求出其近似关系Y=G(X)。 插值与曲线拟合实际上是求这个近似关系的两种方法,不同的是,插值方法

哈工大MATLAB选修课第2次小作业

1. 表1 用三次样条方法插值计算0-90 度内整数点的sin 值和0-75 度内整数点的正切值,然后用5 次多项式拟合方法计算相同的函数。 a(度)0 15 30 45 60 75 90 Sin(a)0 0.2588 0.5000 0.7071 0.8660 0.9659 1.0000 tan(a)0 0.2679 0.5774 1.0000 1.7320 3.732 解:分别对应的程序如下: 正弦函数: x = pi*(0:90)/180; y = sin(x); xx = pi*(0:.25:90)/180; yy = spline(x,y,xx); plot(x,y,'o',xx,yy) 正切函数: x = pi*(0:75)/180; y = tan(x); xx = pi*(0:.25:75)/180; yy = spline(x,y,xx); plot(x,y,'o',xx,yy)

正弦拟合: figure x=pi*(0:15:90)/180; y=[0,0.2588,0.5,0.7071,0.866,0.9659,1.0]; xx=pi*(1:0.05:90)/180; p2=polyfit(x,y,5); yy=polyval(p2,xx); plot(x,y,'-ro',xx,yy); 正切拟合: figure x=pi*(0:15:75)/180; y=[0,0.2679,0.5774,1,1.732,3.732]; xx=pi*(1:0.05:75)/180; p2=polyfit(x,y,5); yy=polyval(p2,xx); plot(x,y,'-ro',xx,yy); legend('描点显示','五次拟合')

(完整版)哈工大matlab期末考试题试题及答案(95分)分解,推荐文档

春季学期MATLAB 期末作业 学院:机电工程学院 专业:机械制造设计及其自动化 学号: 班号: 姓名:

姓名: 学号: 学院:机电学院专业:机械制造 2013 年春季学期MATLAB 课程考查题 一、必答题: 1.matlab 常见的数据类型有哪些?各有什么特点? 常量:具体不变的数字 变量:会根据已知条件变化的数字 字符串:由单引号括起来的简单文本 复数:含有复数的数据 2.MATLAB 中有几种帮助的途径? (1)帮助浏览器:选择 view 菜单中的 Help 菜单项或选择 Help 菜单中的MATLAB Help 菜单项可以打开帮助浏览器; (2)help 命令:在命令窗口键入“help”命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息; (3)lookfor 命令:在命令窗口键入“lookfor关键词”可以搜索出一系列与给定关键词相关的命令和函数 (4)模糊查询:输入命令的前几个字母,然后按 Tab 键,就可以列出所有以这几个字母开始的命令和函数。 注意:lookfor 和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用 help 命令显示详细信息。 3.Matlab 常见的哪三种程序控制结构及包括的相应的语句? 1.顺序结构:数据输入A=input(提示信息,选项) 数据输出disp(X) 数据输出fprintf(fid,format,variables) 暂停pause 或pause(n) 2.选择结构: If 语句: if expression (条件) statements1(语句组1) else statements2(语句组2)

哈工大 2012 matlab大作业 部分答案

a=[6,9,3;2,7,5]; b=[2,4;4,6;1,8]; a*b ans = 51 102 37 90 14. A=[4,9,2;7,6,4;3,5,7]; B=[37;26;28]; X=inv(A)*B X = -0.5118 4.0427 1.331815. syms x solve('x^3-7*x^2+2*x+4=0') 15. syms x solve('x^3-7*x^2+2*x+40=0') ans = -2 4 5 16. x=8; y=(x-1)*(x-2)*(x-3)*(x-4) y = 840 17. syms x y=3*x^3+13*x^2+6*x+8; A=factor(y); B=A/(x+4) B =

3*x^2 + x + 218. 18. syms x y=sqrt(4*x^4-12*x^3-14*x^2+5*x+9); df=diff(y) df = -(- 16*x^3 + 36*x^2 + 28*x - 5)/(2*(4*x^4 - 12*x^3 - 14*x^2 + 5*x + 9)^(1/2)) syms x f=4*x^4-12*x^3-14*x^2+5*x+9; nf=int(f) nf = (4*x^5)/5 - 3*x^4 - (14*x^3)/3 + (5*x^2)/2 + 9*x 19. 20. t=0.1:0.1^5*pi:2*pi; x=sin(3*t)*cos(t); y=xin(3*t)*sin(t); plot(x,y) 21. x=0:0.01:10; y1=exp(-0.1*x); y2=exp(-0.2*x); y3=exp(-0.5*x); plot(x,y1,'b',x,y2,'R',x,y3,'k') xlabel('x') ylabel('y') title('Sine and Cosine Curve') gtext('y=exp(-0.1*x)') gtext('y=exp(-0.2*x)') gtext('y=exp(-0.5*x)')

哈工大 matlab电机学仿真实验消除谐波

一.实验内容及目的 1.实验内容 一个单相合成电动势中含有明显的5次谐波和7次谐波,其表达式如下所示。采用短距方法,验证削弱谐波电动势的效果。 E=sin(Vs)+0.2sin(Vs)*sin(5Vs)+0.1sin(Vs)*sin(7Vs) 2实验目的 ①了解削弱谐波电动势的方法; ②探究采用短距绕组削弱谐波电动势的方法; ③探究采用增加槽数削弱谐波电动势的方法; ④探究采用斜槽削弱谐波电动势的方法; ⑤加深对绕组谐波电动势产生原因的理解。 二.实验要求及要点描述 1.削弱谐波电动势的方法 分析要点 ①采用屏幕图形方式直观显示; ②利用MATLAB 编程实现; ③用INSPACE 命令对画出合成波形; ④用计算公式绘制斜槽因数曲线。 三.基本知识及实验方法描述 基本知识 由谐波电动势公式v wv v v Nk f E φφ44.4=可见,通过减少v φ或wv k ,可以降低v E φ。常用的方法有: (1)采用短距绕组 适当选择线圈的节距,使得莫一次谐波的节距因数等于零或者接近于零,即可达到消除或削弱该次谐波的目的,如果要消除v 次谐波,只要选择 001 18090?=k y v τ,就能使该次谐波的节距因数0)90(sin 1 ==o pv y v k γ 从消除谐波的观点来看,式中的k 可选为任意整数;但从尽可能不削弱基波的 角度考虑,应当选用接近于整距的短节距,即选择12-=v k ,此时τ)11(1v y -=。也就是说,为消除第v 次谐波,应当选用比整距短τv 1的短距线圈。 由于三相绕组的线电压间不会出现三次谐波,所以选择三相绕组节距时,主要

应当考虑如何减小5次和7次谐波,故 1y 可选为5/6(=0.833)左右。 (2)采用分布绕组 对于分布绕组,每极每相槽数q 越多,抑制谐波的电动势的效果越好。但是q 增多,意味着总槽数增多,这将使电机的成本提高。q>6时,高次谐波分布因数的下降已不太显著。 (3)采用斜槽 采用斜槽后,由于同一根导体的各个小段在磁场中的位置互不相同,所以与直槽时相比,导体中的感应电动势将有所削弱。一般最常用的,是使得整个斜槽一个槽距。

地震工程作业哈工大 MATLAB程序

地震工程大作业 哈工大李金平 弹性反应谱 原创性声明,主程序由本人独立编写完成,支持各种检验。所选地震动RSN2345CHICHI.AT2 peer索取号:2345 : 010203040506070 -0.25 -0.2 -0.15 -0.1 -0.05 0.05 0.1 0.15 0.2 0.25 时间 (s) 加 速 度 ( m / s 2 )

位移反应谱 局部放大 1234 5678910 周期T (s) 位移 (m m ) 1 1.02 1.04 1.06 1.08 1.1 1.12 9.2 9.259.39.359.49.459.5 9.559.69.659.7周期T (s) 位移 (m m )

求比值 1 2 3 4 567 8 9 10 0.940.950.960.970.980.991 1.011.021.031.04 周期T (s) 比值

绝对加速度反应谱 局部放大 0.2 0.4 0.6 0.8 1 1. 2 1.4 1.6 1.8 2 00.10.20.30.40.50.60.70.80.91周期T (s) S a (m /s 2) -0.25 -0.2 -0.15 -0.1 -0.05 00.050.1 0.15 0.2 0.25 0.150.2 0.250.3 0.35 0.4 0.45周期T (s) S a (m /s 2 )

求比值进行比较 速度反应谱 1 2 3 4 567 8 9 10 0.940.950.960.970.980.991 1.011.021.031.04 周期T (s) 比值 1 2 3 4 567 8 9 10 00.010.020.030.040.050.060.07 0.080.090.1周期T (s) 速度 (m / s )

哈工大MATLAB选修课最终大作业

2014年春季学期 MATLAB 课程考查题 姓名: 学号:11208 学院:机电工程学院 专业:机械设计制造及其自动化 一.必答题(80分) 1. 如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件 有何区别? 答:设置当前目录和搜索路径:在File菜单中选择SetPath选项,之后选择AddFolder增加目录。当前工作目录是指MATLAB运行文件时的目录,只有在当前工作目录或搜索路径下的文件、函数可以被运行或调用。 2. 创建符号变量和符号表达式有哪几种方法? 答:(1)符号变量: x = sym(‘x’) 创建x为符号变量,默认复数区域 x = sym(‘x’, ‘real’) 创建实数的符号变量x x = (‘x’, ‘positive’) 创建正数的符号变量x x = sym('x', 'clear')创建一个没有额外属性的纯形式上的符号变量x s=sym(‘ab’,’flag’) 创建flag数域(复数,实数,正数)符号变量名s,内容ab (2)符号表达式: ①直接法:>> x=sym('x'); >> a=sym('a'); >> b=sym('b'); >> f=sin(b*x)+exp(-a*x) ②整体定义法:f=sym(‘expression’) ③字符串符号表达式:f=‘expression’

3. GUIDE提供哪些常用的控件工具,各有什么功能?(5分) 答:按钮(Push Buttons) :通过鼠标单击按钮可以执行某种预定的功能或操作; 静态文本框(Static Texts):仅用于显示单行的说明文字. 文本编辑器(Editable Texts):用来使用键盘输入字符串的值,可以对编辑框中的内容进行编辑、删除和替换等操作; 单选按钮(Radio Button):单个的单选框用来在两种状态之间切换,多个单选框组成一个单选框组时,用户只能在一组状态中选择单一的状态,或称为单选项; 滚动条(Slider):可输入指定范围的数量值,通过移动滚动条来改变指定范围内的数值输入,滚动条的位置代表输入数值。 复选框(Check Boxes):单个的复选框用来在两种状态之间切换,多个复选框组成一个复选框组时,可使用户在一组状态中作组合式的选择,或称为多选项; 列表框(List Boxes):列表框显示列表项,并能够选择其中的一项或多项。 弹出式菜单(Popup Menus):让用户从一列菜单项中选择一项作为参数输入。 组合框(面板)panel:组合框是图形窗口中的一个封闭区域,它把相关联的控件组合在一起。 开关按钮(Toggle Button):产生一个一个二进制状态动作(开或关),当鼠点击它时按钮将下陷,并执行callback(回调函数)中指定的内容,再次点击,按钮复原,并再次执行callback 中的内容。 坐标轴axes:坐标轴可以设置关于外观和行为的参数。 按钮组button group:按钮组类似于组合框,但是它可以响应单选按钮以及开关按钮的高级属性。 4. 建立不同数据类型的变量:包括双精度的数值型(numeric)、符号型(sym)、结 构体(structure)、单元型(cell)、字符串型(char),函数句柄(function handle)、逻辑型(logical),并且采用whos列出各变量名,变量的数组维数,占用字节数,变量的类别。(4分)

哈理工matlabA卷

哈尔滨理工大学 2007-2008学年 第二学期考试试题 A 卷 考试科目:MATLAB 语言及应用 考试时间:120分钟 试卷总分100分 考试班级:自动化06-5、6、7、8 一、单项选择题(每题2分,共20分) 1、下列关于help help 命令,说法正确的是( )。 A .打开帮助浏览器; B .显示help 命令的帮助注释区; C .显示help 命令帮助注释区的H1行; D .显示H1行含有help 字符的所有命令。 2、有一个2行2列的细胞数组c ,则c(2)是指( )。 A .第1行第2列的元素内容 B .第2行第1列的元素内容 C .第1行第2列的元素 D.第2行第1列的元素 3、计算三个多项式s1、s2和s3的乘积,则算式为( )。 A.conv(s1,s2,s3) B.s1*s2*s3 C.conv(conv(s1,s2),s3) D.conv(s1*s2*s3) 4、mesh 函数是( )。 A.绘制三维曲面图 B.绘制三维网线图并添加平行于z 轴的边框线 C.绘制三维表面图 D.绘制三维网线图 5、已知x 为一个向量,计算ln(x)的MATLAB 命令是( )。 A .ln(x) B .log(x) C .Ln(x) D .lg10(x) 6、在MA TLAB 中( )用于括住字符串。 A ., B .; C .’’ D .”” 7、已知x=linspace(1,5,9),则x 有( )个元素。 A .10 B .11 C.9 D .12 8、已知数组12 3456789a ?? ??=?? ???? ,则a(:,end)是指( )。 A .第三列元素 B .第一行元素 C .所有元素 D .第三行元素 9、下面switch 结构,正确的是( c )。 A .switch a B. switch a C.switch a D.switch a case a>1 case a=1 case 1 case =1 10、下列变量名中,合法的是( a )。

相关主题
文本预览
相关文档 最新文档