温度场声波路径程序说明.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
温度场声波路径程序说明

声波传播路径程序说明一、程序流程图二、变量含义说明1、求解结果必须用到的变量:[z]:读入温度数据时的温度向量;tt:存储温度数据的51*51的温度矩阵;T:将温度转化为声速大小的函数;s:某次打靶结束时点与指定点的距离;e:循环终止判定的阈值;i,j:记录循环次数的变量;x_int,y_int:某一声线的入射点坐标;h,t:前向展开三角形的高和底边长度;thelt1:前向展开三角形的顶角半角的大小;z:温度转换为声速的常数;x_over,y_over:指定点的坐标(声线结束点的坐标);[xx_over],[yy_over]:记录每次打靶结束时点坐标的向量;[x],[y]:用于存储声波传播路径上离散点的坐标;[k]:每次打靶时初始入射向量的y方向的分量大小;[ax],[ay]:声波传播路径上离散点对应的入(出)射方向向量;[thelt2]:记录声波传播路径上离散点的入(出)射方向向量所对应的角度;[x1],[y1],[x2],[y2]:声波传播路径上离散点对应三角形的其他2个顶点的坐标;xh,yh:三角形中底边中点的坐标;[c],[c1],[c2]:三角形3个顶点对应的声速大小;[cx],[cy],[c0]:某段声线圆弧曲线对应声速分布函数的系数;[x0],[y0]:某段声线圆弧曲线对应的圆心坐标;r:某段声线圆弧曲线对应的曲率半径大小;d:三角形底边中心与三角形出射点的距离;d1:声波传播结束前倒数第二个离散点与边界线的距离;(1:是数字)dl:某三角形内声波实际传播路径的距离;(l是字母)dc:声波传播路径上相邻两离散点的声速差值;[dtime]:某三角形内声波实际传播的时间;D0:两点之间直线距离;D1:声波实际传播路径的总距离;time:声波实际传播的总时间;2、求解结果时不需要用到的变量(可舍弃):[thelt3]:某三角形对应的声速分布函数的某条直线与x轴正方向的夹角;[thelt4],[thelt5]:某三角形的入射点、出射点和圆心的连线与x轴正方向的夹角;[dthelt1]、[dthelt2]:某三角形的入射点、出射点和圆心的连线与声速分布函数的某条直线的夹角;三、程序语句具体说明1、主程序-------------------------设置图片的界线clearfiguregridaxis([-3.785 3.785 -3.785 3.785])hold on--------------------------读入温度数据,并将其存入51*51的tt矩阵中[z]=xlsread(Temperature,c2:c2602);global tt;N=51;for i=1:N for j=1:N tt(i,j)=z((i-1)*N+j); endend---------------------------部分参数的初始化s=100;e=0.01;j=1;x_int=2.0482;y_int=3.785;-----------------------打靶算法开始while seh=0.01;%以下为部分变量的初始化;t=0.01;thelt1=atand(t/2/h);z=19.08;x_over=3.785;y_over=1.5304;x(1)=x_int;y(1)=y_int;k(1)=-1;k(2)=-2;if j=3%当j=3时,采用线性差值得出下次打靶时初始的入射方向矢量; k(j)=k(j-1)+(k(j-1)-k(j-2))*(y_over-yy_over(j-1))/(yy_over(j-1)-yy_over(j-2));endax(1)=1;ay(1)=k(j);i=1;while abs(x(i))=3.785abs(y(i))=3.785 %判断声线是否超出边界; thelt2(i)=atand(ay(i)/ax(i)); %某个三角形的入射角度(在-90~90之间); if ax(i)0ay(i)0%以下两个if语句用于修正入射角度(-180~180之间); thelt2(i)=thelt2(i)+180; end if ax(i)0ay(i)0 thelt2(i)=thelt2(i)-180; end%以下4个式子得到三角形另外2顶点的坐标; x1(i)=x(i)+sqrt(h^2+t^2/4)*cosd(thelt1+thelt2(i)); y1(i)=y(i)+sqrt(h^2+t^2/4)*sind(thelt1+thelt2(i)); x2(i)=x(i)+sqrt(h^2+t^2/4)*cosd(thelt2(i)-thelt1); y2(i)

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档