白塞尔大地主题算法教学提纲
- 格式:ppt
- 大小:323.50 KB
- 文档页数:38
收稿日期:2020-03-02修回日期:2020-04-28作者简介:温永禄(1993-),男,甘肃白银人,硕士。
研究方向:飞行器任务规划、指挥控制系统。
摘要:针对已知目标点坐标和射程射向情况下的发射点坐标精确计算问题,提出一种基于迭代误差补偿的非典型大地主题正解方法。
该方法利用发射点方位角粗略计算目标点方位角,并调用大地主题正解方法,计算初始的发射点坐标和发射点方位角,将已知的发射点方位角和计算得到的发射点方位角之间的偏差作为负反馈,用于修正目标点方位角,通过迭代求解的方式得到发射点坐标。
通过利用大地主题解算方式对非典型大地主题正解方法进行检验,得出发射点与目标点坐标之间的方位角偏差为10-7°,计算精度满足工程应用中的发射点坐标误差要求,能够用于军事指挥信息系统中发射点精确计算。
关键词:迭代误差,大地主题,发射点坐标,精确求解中图分类号:TJ013;TP311.1文献标识码:ADOI :10.3969/j.issn.1002-0640.2021.05.008引用格式:温永禄,马骏,黄蓓,等.基于迭代误差补偿的发射点坐标精确求解方法[J ].火力与指挥控制,2021,46(5):40-45.基于迭代误差补偿的发射点坐标精确求解方法温永禄,马骏,黄蓓,李强,许诺(中国运载火箭技术研究院,北京100071)Accurate Solution Method of Coordinates ofLaunch Points Based on Iterative Error CompensationWEN Yong-lu ,MA Jun ,HUANG Bei ,LI Qiang ,XU Nuo (China Academy of Launch Vehicle Technology ,Beijing 100071,China )Abstract :Aiming at the problem of accurate calculation of the coordinates of the launch point inthe case of the known target point coordinates ,the launched direction and range ,a positive method to solve the atypical direct geodetic problem based on iterative error compensation is proposed.The method firstly uses the azimuth of launch points to roughly calculate the azimuth of target point ,andthen calculates the initial coordinates and azimuth of launch point using the direct solution of geodetic problem.The deviation between the known and calculated azimuth of launch point is used as a negative feedback to correct the azimuth of target points.Finally ,the coordinates of launch point are obtained by iterative solution mode.By using the solution of geodetic problem ,the method of positive solution of atypical earth topic is tested.The simulation results indicate that the azimuth deviation between the launch point coordinates and target point coordinates coordinates is 10-7°.The accuracy of calculation satisfies the error requirements of launch point coordinates in engineering application.The proposedmethod can be used for accurate calculation of launch point in military command information system.Key words :iteratve error ,geodetic problem ,coordinates of launch points ,accurate solution Citation format :WEN Y L ,MA J ,HUANG B ,et al.Accurate solution method of coordinates of launch points based on iterative error compensation [J ].Fire Control &Command Control ,2021,46(5):40-45.0引言随着现代化战争的动态化和复杂化发展,军事信息系统将是提升现代化战争下指挥员指挥能力、发挥武器装备作战效能的重要抓手[1-2],而军事信息系统经常涉及到发射点精确计算问题,该问题属文章编号:1002-0640(2021)05-0040-06Vol.46,No.5May ,2021火力与指挥控制Fire Control &Command Control 第46卷第5期2021年5月40··(总第46-)于CGCS2000坐标系下的大地主题解算。
《算法的程序体验》学历案(第一课时)一、学习主题本课学习主题为“算法的程序体验”,是小学信息技术课程的重要组成部分。
通过本课的学习,学生将初步了解算法的概念,掌握简单的编程逻辑,体验程序的运行过程,为后续的编程学习打下基础。
二、学习目标1. 了解算法的基本概念,理解算法在程序中的作用。
2. 学会分析简单问题的解决步骤,形成算法的初步认识。
3. 通过实际操作,体验编程的基本过程,包括编写代码、调试程序等。
4. 培养学生的逻辑思维能力和解决问题的能力。
三、评价任务1. 评价学生对算法基本概念的理解程度,能否正确解释算法在程序中的作用。
2. 评价学生分析问题、形成算法的能力,能否将实际问题转化为可执行的程序步骤。
3. 评价学生在编程实践中的操作能力,包括代码编写、程序调试等。
4. 评价学生的逻辑思维能力和解决问题的能力,能否通过编程解决实际问题。
四、学习过程1. 导入新课:通过生活中的实例,引导学生理解算法的概念,如“如何合理安排时间完成多项任务”。
2. 新课讲解:教师通过课件展示算法的概念、作用及简单编程逻辑。
讲解时结合实例,让学生形成直观认识。
3. 互动讨论:学生分组讨论,教师引导学生在组内分享对算法的理解,讨论如何将实际问题转化为算法。
4. 编程实践:学生利用编程软件,根据教师提供的题目,编写程序并调试运行。
教师巡回指导,及时解答学生疑问。
5. 分享交流:学生展示自己的程序作品,分享编程过程中的心得体会,互相评价学习成果。
6. 总结提升:教师总结本课学习内容,强调算法在编程中的重要性,鼓励学生继续探索编程的乐趣。
五、检测与作业1. 检测学生对算法基本概念的理解程度,布置相关习题进行练习。
2. 布置编程实践作业,让学生自行选择题目,编写程序并运行,记录编程过程及心得体会。
3. 要求学生完成作业后进行自我评价和互评,培养评价能力。
六、学后反思1. 学生反思自己在本次课程中的收获和不足,如何改进学习方法。
白塞尔大地主题解算的基本思想
首先,白塞尔大地主题解算的基本思想之一是建立地壳变形的力学模型。
地壳变形是地球表面的一项重要现象,是由于地质作用和地球内部力
学过程的结果。
地壳变形的力学模型是研究地壳变形的重要方法。
常见的
地壳变形的力学模型有弹性模型、弹塑性模型和拟弹性模型等。
这些模型
可以描述地壳的变形过程,通过对地壳的变形过程进行建模,可以更好地
理解地壳变形的机制和动力学过程。
其次,白塞尔大地主题解算的思想之一是研究现今地球表面的动力学
过程。
地球表面的动力学过程包括板块运动、地震活动、火山喷发等。
这
些过程在地球的长期演化中起着重要的作用。
通过对现今地球表面动力学
过程的研究,可以揭示地球内部的结构和动力学机制,进而更好地理解地
壳变形的成因和发展变化的规律。
第三,白塞尔大地主题解算的基本思想之一是研究地壳变形的成因。
地壳变形的成因是地壳运动的基本原因,也是地球科学研究的一个重要问题。
地壳变形的成因包括构造运动、地壳应力状态的改变、地震活动等。
通过研究地壳变形的成因,可以更好地了解地壳变形的机制和规律,进而
为地震预测和地壳运动的控制提供科学依据。
总之,白塞尔大地主题解算的基本思想是通过建立地壳变形的力学模型,研究现今地球表面的动力学过程,探究地壳变形的成因,揭示地壳变
形与地球动力学过程之间的相互关系,以推动地壳运动的理论和应用研究。
这一思想对于研究地壳运动的机制和规律,了解地壳变形的成因和动力学
过程,提高地震预测和地壳运动控制的水平具有重要意义。
白塞尔大地主题解算课程设计大地测量学课程设计设计题目:白塞尔大地主题解算学院: 矿业学院专业: 测绘工程班级: 测绘122学号: 1208010255学生姓名: 郑英智指导教师: 张俊2014年12月26日目录1. 白塞尔法大地主题正算步骤 12. 白塞尔法大地主题反算步骤 33. 同一平行圈弧长、子午线弧长与大地线比较大小 44. 程序代码 55. 演算示例 96. 参考文献 127. 心得体会 13教师评语 14白塞尔大地主题解算摘要:白塞尔法解算大地主题的基本思想是将椭球面上的大地元素按照白塞尔投影条件(,椭球面大地线投影到球面上为大圆弧;,大地线和大圆弧上相应点的方位角相等;,球面上任意一点的纬度等于椭球面上相应点的归化纬度。
)投影到辅助球面上,继而在球面上进行大地主题解算,最后再将球面上的计算结果换算到椭球面上。
1.白塞尔法大地主题正算步骤2已知、、、、()、S,计算、、()。
BLABLAaAAe1112221221(1)将椭球面元素投影到球面上2utanu,1,etanB求:,由B1111A,计算辅助量和 ,01sinA,cosusinAtan,,tanusecA , 011111, ,计算球面长度,将S化为,,,S,,sin,cos(2,,,),,sin2,cos(4,,2,) 11式中系数分别为:''''246k7k15k,,,,(1,,,,?) ,bAb464256''246,Bkk37k'',,,,(,,,?) A48512''46,Ckk'',,,,(,,?) A12812822'2k,ecosA 024635kkk ,1,,,,?A464256246kk15kB,,,,?41651246kk3C,,?128512,,,,S上式右端含有,因此需要迭代计算。
第一次迭代取近似值,第二次计算取 0,,,S,,sin,cos(2,,,),,sin2,cos(4,,2,) 01010- 1 -,以后计算用代换,代入上式迭代计算,直到所要求的精度为止。
《自然语言描述算法》学历案(第一课时)一、学习主题本课的学习主题是“自然语言描述算法”,即让学生了解什么是算法、什么是自然语言描述的算法,以及如何在生活中和计算机程序中应用自然语言描述算法的基本原理。
二、学习目标1. 理解算法的概念及其在信息技术中的应用。
2. 掌握自然语言描述算法的基本原理和方法。
3. 能够根据简单的问题,使用自然语言描述出基本的算法过程。
4. 培养逻辑思维能力和创新能力,增强学生对信息技术的学习兴趣。
三、评价任务1. 课堂表现评价:观察学生在课堂上的表现,包括对算法概念的理解程度、对自然语言描述算法的掌握情况以及课堂互动的活跃度。
2. 小组活动评价:小组讨论后展示自己的自然语言描述算法案例,并解释其逻辑过程,通过小组成员间的互相评价,评价其描述的准确性和逻辑性。
3. 作业完成情况评价:通过完成课后作业,检验学生对自然语言描述算法的掌握程度和作业完成的质量。
四、学习过程1. 导入新课:通过生活中的实例(如烹饪食谱、游戏规则等)引出算法的概念,让学生初步了解算法在生活中的重要性。
2. 讲解算法:讲解算法的定义、特点及在信息技术领域的应用,帮助学生建立对算法的初步认识。
3. 介绍自然语言描述算法:介绍什么是自然语言描述算法,其特点和优势,以及在计算机程序中的应用。
4. 案例分析:展示几个自然语言描述算法的案例,让学生了解其具体应用和实现过程。
5. 实践操作:学生分组进行实践操作,选择一个简单的问题,使用自然语言描述出其算法过程。
教师巡回指导,及时解答学生在实践过程中遇到的问题。
6. 小组展示与评价:每个小组展示自己的成果,并解释其逻辑过程。
其他小组进行评价,教师进行总结评价。
7. 课堂总结:总结本课所学内容,强调自然语言描述算法的重要性和应用价值。
五、检测与作业1. 课堂检测:通过课堂小测验或练习题,检测学生对自然语言描述算法的理解和掌握情况。
2. 课后作业:布置与本课内容相关的课后作业,如让学生选择一个实际问题,使用自然语言描述出其算法过程并记录下来。
《算法的概念》教案教学目标(1)初步了解算法的含义和概念,了解算法的概括性、逻辑性、有穷性、不惟一性和普遍性等特征。
(2)初步了解消去法的思想。
(3)体会算法的思想,能说明解决简单问题的算法步骤。
重点与难点教学重点:算法的含义、概念及特征。
教学难点:把自然语言转化为算法语言。
教学过程一、概念引入一个人带三只狼和三只羚羊过河,只有一条船,同船可以容纳一个人和两只动物.没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊.请设计过河的算法。
解:算法或步骤如下:S1 人带两只狼过河;S2 人自己返回;S3 人带一只羚羊过河;S4 人带两只狼返回;S5 人带两只羚羊过河;S6 人自己返回;S7 人带两只狼过河;S8 人自己返回;S9 人带一只狼过河.算法(algorithm)一词源于算术(arithmetic),即算术方法,是指一个由已知推求未知的运算过程。
后来,人们把它推广到一般,把进行某一工作的方法和步骤称为算法。
广义地说,算法就是做某一件事的步骤或程序。
菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。
在数学中,主要研究计算机能实现的算法,即按照某种机械程序步骤一定可以得到结果的解决问题的程序。
比如解方程的算法、函数求值的算法、作图的算法,等等。
二、新知探究处理方式【问题1】请同学们解二元一次方程组x-2y=-1, ①2x+y=1, ②求解过程,我们可以归纳出以下步骤: 第一步:②-①×2,得 5y=3; 第二步:解③得y=3/5; 第三步:将y=3/5代入①,得x=1/5; 第四步:得到方程组的解为从特殊到一半,若上式的数字用字母代替会如何? 【问题2】对于一般的二元一次方程组 其中a 1b 2-a 2b 1≠0,设计一个算法。
第一步:④×b 2-⑤×b 1,得(a 1b 2-a 2b 1)x=b 2c 1- b 1c 2, ⑥第二步:解⑥,得21121221b .c b c x a b a b -=-第三步:,⑤×a1-④×a2,得(a 1b 2-a 2b 1)y=a 1c 2- a 2c 1. ⑦第四步:解⑦,得12211221b a b a c a c a y --=.第五步:得到方程组的解为通过上面的例子我们可以总结出算法的概念:总结:这一例子体现算法具有通用性。
第二章 算法初步第一课时 2.1算法的基本思想【课程标准】通过对解决具体问题过程与步骤的分析(如二元一次方程组求解等问题),体会算法的思想,了解算法的含义.【教学目标】1.理解算法的概念与特点;2.学会用自然语言描述算法,体会算法思想;3.培养学生逻辑思维能力与表达能力.【教学重点】算法概念以及用自然语言描述算法【教学难点】用自然语言描述算法【教学过程】一、序言算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础. 在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具. 听音乐、看电影、玩游戏、打字、画卡通画、处理数据,计算机几乎渗透到了人们生活的所有领域. 那么,计算机是怎样工作的呢?要想弄清楚这个问题,算法的学习是一个开始. 同时,算法有利于发展有条理的思考与表达的能力,提高逻辑思维能力.在以前的学习中,虽然没有出现算法这个名词,但实际上在数学学习中已经渗透了大量的算法思想,如四则运算的过程、求解方程的步骤等等,完成这些工作都需要一系列程序化的步骤,这就是算法的思想.二、实例分析例1:写出你在家里烧开水过程的一个算法.解:第一步:把水注入电锅;第二步:打开电源把水烧开;第三步:把烧开的水注入热水瓶.(以上算法是解决某一问题的程序或步骤)例2:给出求1+2+3+4+5的一个算法.解: 算法1 按照逐一相加的程序进行.第一步:计算1+2,得到3;第二步:将第一步中的运算结果3与3相加,得到6;第三步:将第二步中的运算结果6与4相加,得到10;第四步:将第三步中的运算结果10与5相加,得到15.算法2 运用公式123n ++++=2)1(+n n 直接计算. 第一步:取n =5; 第二步:计算2)1(+n n ; 第三步:输出运算结果.算法3 用循环方法求和.第一步:使1S =,;第二步:使2I =;第三步:使S S I =+;第四步:使1I I =+;第五步:如果5I ≤,则返回第三步,否则输出S .点评:一个问题的算法可能不唯一.例3 给出求解方程组274511x y x y +=⎧⎨+=⎩的一个算法.解:用消元法解这个方程组,步骤是: 第一步:方程①不动,将方程②中x 的系数除以方程①中x 的系数,得到乘数422m ==; 第二步:方程②减去m 乘以方程①,消去方程②中的x 项,得到2733x y y +=⎧⎨=-⎩; 第三步:将上面的方程组自下而上回代求解,得到1y =-,4x =.所以原方程组的解为41x y =⎧⎨=-⎩. 点评:通过例1再次明确算法特点:有限性和确定性例4.用二分法设计一个求解方程x 2–2=0的近似根的算法。
存档日期:存档编号:江苏师范大学科文学院本科生毕业设计(论文)论文题目:贝塞尔大地主题正反算及程序设计*名:**系别:环境与测绘系专业:测绘工程年级、学号:08测绘、************师:***江苏师范大学科文学院教务部印制摘要在大地测量计算过程中,大地主题解算计算繁琐复杂,手工计算易于出错,而且费时费力。
随着计算机技术的高速发展,计算机计算的速度快、准确度高、计算机语言的丰富、编程可视化等优点为我们将复杂烦琐的计算过程简单、简洁、高效化带来了契机。
为了便于工程计算,本课题着眼于研究借助计算机及其编程语言MATLAB来实现大地主题解算问题。
大地主题解算方法,主要有高斯平均引数法、勒让德级数法、贝塞尔法。
前两种方法受到大地线长度的制约,随着大地线两端点的距离加大,其解算精度明显降低。
而贝塞尔法具有不受大地线长度制约的优点,解算精度最大不超过5毫米,是大地主题解算方法中解算精度最高的一种。
因此,本文就以贝塞尔法为研究对象,开发贝塞尔大地主题解算小程序。
关键词:贝塞尔大地主题正反算,程序设计A b s t r a c tIn Geodetic computation process, the solution of geodetic problem computational complexity of manual calculation, error prone, and took the time and trouble. With the rapid development of computer technology, computational speed, high accuracy, computer language, the advantages of rich programming visualization for we will complex complicated calculating process is simple, concise, efficient change brings opportunity. For the convenience of engineering calculation, this paper focus on the research of have the aid of computer and programming language MATLAB to realize the geodetic problem solving.Solution of geodetic problem method, mainly Gauss average argument method, Legendre series expansion method, Bessel method. The former two methods by geodesic length constraints, along with the line ends point distance increase, the calculation precision significantly reduced. Bessel law is not affected by the advantages of geodesic length restriction, calculation accuracy of less than 5mm, is the theme of the earth solution method of calculating precision is highest kind. Therefore, this article on Bessel law as the object of study, the development of Bessel solution of geodetic problem of small procedures.Key words:Direct and inverse solution of geodetic problem,The designing of program目录摘要 .................................................... I Abstract (II)1. 椭球面和球面上对应元素间的关系 (1)1.1 贝塞尔法解算大地问题的基本思想 (1)1.2 对应元素关系式 (1)2. 在球面上进行大地主题解算 (5)2.1 球面上大地主题正解方法 (6)2.2 球面上大地主题反解方法 (6)3. 贝塞尔微分方程的积分 (8)3.1 用于大地主题反算时的大地线长度公式 (8)3.2 用于大地主题正算时的大地线长度公式 (10)3.3 椭球面大地线端点经差与球面经差的关系式 (11)3.4 反解时,大地线长度和球面长度关系式的简化 (13)4. 贝塞尔大地主题正解算步骤 (15)4.1 计算起点的归化纬度 (15)4.2 计算辅助函数值 (15)4.3 计算系数 (15)4.4 计算球面长度 (15)4.5 计算经差改正数 (16)4.6 计算终点大地坐标及大地方位角 (16)5. 贝塞尔大地主题正解算MATLAB 程序设计 (17)5.1 正算流程 (17)5.2 界面设计及功能模块编写 (18)6. 贝赛尔大地主题反解算步骤 (23)6.1 辅助计算 (23)6.2 用逐次趋近法同时计算起点大地方位角、球面长度及经差δλ+=l :236.3 计算系数及大地线长度S (24)6.4 计算反方位角 (24)7. 贝塞尔大地主题反解算MATLAB 程序设计 (25)7.1 反算流程 (25)7.2 界面设计及功能模块编写 (26)8 总结 (29)参考文献 (31)致谢 (29)1. 椭球面和球面上对应元素间的关系1.1 贝塞尔法解算大地问题的基本思想基本思想:将椭球面上的大地元素按照贝塞尔投影条件投影到辅助球面上,继而在球面上进行大地问题解算,最后再将球面上的计算结果换算到椭球面上。
白塞尔大地主题解算方向:学号:姓名:一.基本思路:基本思想:将椭球面上的大地元素按照白塞尔投影条件投影到辅助球面上,继而在球面上进行大地主题解算,最后在将球面上的计算结果换算到椭球面上。
其关键问题是找出椭球面上的大地元素与球面上相应元素之间的关系式,同时解决在球面上进行大地主题解算的方法。
正算流程:1.计算起点的归化纬度2.计算辅助函数值,解球面三角形3.按公式计算相关系数A,B,C 以及α,β4.计算球面长度5.计算纬度差改正数6.计算终点大地坐标及大地方位角011122S B C A{sin (cos )}σσσ=-+10101022222sin ()sin sin cos cos σσσσσσ+=+10101022222cos ()cos cos sin sin σσσσσσ+=-001101522B C A[cos ()]sin ()σσσσσσ=++++010122L A sin [(sin ()sin )]λδασβσσσ-==++-2111u u u A sin sin cos cos cos sin σσ=+2222222222222222222222111111111e u B u B W W u e B u u B B arctan e u e u sin sin cos cos tan tan sin sin tan cos -cos ⎧-==⎪⎪⎨⎪=-⎪⎩⎡⎤⎢⎥==--⎢⎥-⎣⎦1111A arctan u u A sin sin []cos cos sin sin cos σλσσ=-21L L λδ=+-112111u A A arctan u A u cos sin cos cos cos sin sin σσ⎡⎤=⎢⎥-⎣⎦反算流程:1.辅助计算2.用逐次趋近法同时计算起点大地方位角、球面长度及经差,第一次趋近时,取δ=0。
计算下式,重复上述计算过程2.3.计算大地线长度S4.计算反方位角二.已知数据序号B1(DD.MMSS)L1 (DD.MMSS)A12(DD.MMSS)S12(m)1 41.01356874 130.10122676 1.4943 8000L λδ=+211212u pA u u u u qsin cos tan cos sin sin cos cos λλ==-2121p p u q b b A arctanqsin cos cos λλ==-=11p A q A sin cos tan cos σσ+=11p A q A sin sin cos σ=+12a a cos cos σλ=+arctan sin cos σσσ⎛⎫=⎪⎝⎭011A u A sin cos sin =111u A tan tan sec σ=21+σσσ=02122L A sin [(sin sin )]λδασβσσ-==+-L λδ=+11222222S A B C B C sin (cos )sin (cos )σσσσσ=++-+1212u A b b cos sin arctan cos λλ⎡⎤=⎢⎥-⎣⎦三.源代码:#include <stdio.h>#include <math.h>#define e 0.081813334016931499 //克拉索夫斯基椭球体第一偏心率void main(){int k,B10,B11,L10,L11,A10,A11,B20,B21,L20,L21,A20,A21;double B12,L12,A12,B22,L22,A22;double B1,L1,A1,S,B2,L2,A2,L,pi;double A,B,C,afa,beta;double a1,a2,b1,b2,p,q,x,y;doubleW1,W2,sinu1,sinu2,cosu1,cosu2,sinA0,cotsigma1,sin2sigma1,cos2sigma1,sigma0,sin2,cos2,sigm a,sins,coss,delta0,delta,lamda;pi=4*atan(1);printf("白塞尔大地主题正算请输入1\n白塞尔大地主题反算请输入2\n");scanf("%d",&k);if(k==1){printf("请输入大地线起点纬度B经度L,大地方位角A及大地线长度S:\n");scanf("%d%d%lf%d%d%lf%d%d%lf%lf",&B10,&B11,&B12,&L10,&L11,&L12,&A10,&A 11,&A12,&S);B1=(B10+(float)B11/60+B12/3600)*pi/180;L1=(L10+(float)L11/60+L12/3600)*pi/180;A1=(A10+(float)A11/60+A12/3600)*pi/180;W1=sqrt(1-e*e*sin(B1)*sin(B1)); //计算起点规划纬度sinu1=sin(B1)*sqrt(1-e*e)/W1; //计算起点规划纬度cosu1=cos(B1)/W1; //计算起点规划纬度sinA0=cosu1*sin(A1); //计算辅助函数值cotsigma1=cosu1*cos(A1)/sinu1; //计算辅助函数值sin2sigma1=2*cotsigma1/(cotsigma1*cotsigma1+1); //计算辅助函数值cos2sigma1=(cotsigma1*cotsigma1-1)/(cotsigma1*cotsigma1+1); //计算辅助函数值A=6356863.020+(10708.949-13.474*(1-sinA0*sinA0))*(1-sinA0*sinA0);B=(5354.469-8.798*(1-sinA0*sinA0))*(1-sinA0*sinA0);C=(2.238*(1-sinA0*sinA0))*(1-sinA0*sinA0)+0.006;afa=691.46768-(0.58143-0.00144*(1-sinA0*sinA0))*(1-sinA0*sinA0);beta=(0.2907-1.0E-3*(1-sinA0*sinA0))*(1-sinA0*sinA0);sigma0=(S-(B+C*cos2sigma1)*sin2sigma1)/A;sin2=sin2sigma1*cos(2*sigma0)+cos2sigma1*sin(2*sigma0);cos2=cos2sigma1*cos(2*sigma0)-sin2sigma1*sin(2*sigma0);sigma=sigma0+(B+5*C*cos2)*sin2/A;delta=(afa*sigma+beta*(sin2-sin2sigma1))*sinA0; //计算经度差改正数delta=delta/3600*pi/180;sinu2=sinu1*cos(sigma)+cosu1*cos(A1)*sin(sigma);B2=atan(sinu2/(sqrt(1-e*e)*sqrt(1-sinu2*sinu2)));lamda=atan(sin(A1)*sin(sigma)/(cosu1*cos(sigma)-sinu1*sin(sigma)*cos(A1))); if(sin(A1)>0){if(tan(lamda)>0)lamda=fabs(lamda);elselamda=pi-fabs(lamda);}else{if(tan(lamda)>0)lamda=fabs(lamda)-pi;elselamda=-1*fabs(lamda);}L2=L1+lamda-delta;A2=atan(cosu1*sin(A1)/(cosu1*cos(sigma)*cos(A1)-sinu1*sin(sigma)));if(sin(A1)>0){if(tan(A2)>0)A2=pi+fabs(A2);elseA2=2*pi-fabs(A2);}else{if(tan(A2)>0)A2=fabs(A2);elseA2=pi-fabs(A2);}B2=B2*180*3600/pi;L2=L2*180*3600/pi;A2=A2*180*3600/pi;B20=(int)B2/3600;B21=(int)B2/60-B20*60;B22=B2-B20*3600-B21*60;L20=(int)L2/3600;L21=(int)L2/60-L20*60;L22=L2-L20*3600-L21*60;A20=(int)A2/3600;A21=(int)A2/60-A20*60;A22=A2-A20*3600-A21*60;printf("正算得到的终点大地经度和大地纬度及A2:\n%d %d %lf\n%d %d %lf\n%d %d %lf\n",B20,B21,B22,L20,L21,L22,A20,A21,A22);}else{printf("请输入大地线起点和终点的坐标BL\n");scanf("%d%d%lf%d%d%lf%d%d%lf%d%d%lf",&B10,&B11,&B12,&L10,&L11,&L12,&B 20,&B21,&B22,&L20,&L21,&L22);B1=(B10+(double)B11/60+B12/3600)*pi/180;L1=(L10+(double)L11/60+L12/3600)*pi/180;B2=(B20+(double)B21/60+B22/3600)*pi/180;L2=(L20+(double)L21/60+L22/3600)*pi/180;W1=sqrt(1-e*e*sin(B1)*sin(B1));W2=sqrt(1-e*e*sin(B2)*sin(B2));sinu1=sin(B1)*sqrt(1-e*e)/W1;sinu2=sin(B2)*sqrt(1-e*e)/W2;cosu1=cos(B1)/W1;cosu2=cos(B2)/W2;L=L2-L1;a1=sinu1*sinu2;a2=cosu1*cosu2;b1=cosu1*sinu2;b2=sinu1*cosu2;delta0=0;lamda=L+delta0;p=cosu2*sin(lamda);q=b1-b2*cos(lamda);A1=atan(p/q);if(p>0){if(q>0)A1=fabs(A1);elseA1=pi-fabs(A1);}else{if(q>0)A1=2*pi-fabs(A1);elseA1=pi+fabs(A1);}sins=p*sin(A1)+q*cos(A1); //计算sigma的正弦值coss=a1+a2*cos(lamda); //计算sigma的余弦值sigma=atan(sins/coss);if(coss>0)sigma=fabs(sigma);elsesigma=pi-fabs(sigma);sinA0=cosu1*sin(A1);x=2*a1-(1-sinA0*sinA0)*cos(sigma);afa=(33523299-(28189-70*(1-sinA0*sinA0))*(1-sinA0*sinA0))*1.0e-10; beta=(28189-94*(1-sinA0*sinA0))*1.0e-10;delta=(afa*sigma-beta*x*sin(sigma))*sinA0;lamda=L+delta;while(fabs(delta-delta0)>4.8e-10){delta0=delta;p=cosu2*sin(lamda);q=b1-b2*cos(lamda);A1=atan(p/q);if(p>0){if(q>0)A1=fabs(A1);elseA1=pi-fabs(A1);}else{if(q>0)A1=2*pi-fabs(A1);elseA1=pi+fabs(A1);}sins=p*sin(A1)+q*cos(A1); //计算sigma的正弦值coss=a1+a2*cos(lamda); //计算sigma的余弦值sigma=atan(sins/coss);if(coss>0)sigma=fabs(sigma);elsesigma=pi-fabs(sigma);sinA0=cosu1*sin(A1);x=2*a1-(1-sinA0*sinA0)*cos(sigma);afa=(33523299-(28189-70*(1-sinA0*sinA0))*(1-sinA0*sinA0))*1.0e-10;beta=(28189-94*(1-sinA0*sinA0))*1.0e-10;delta=(afa*sigma-beta*x*sin(sigma))*sinA0;lamda=L+delta;}A=6356863.020+(10708.949-13.474*(1-sinA0*sinA0))*(1-sinA0*sinA0);B=10708.938-17.956*(1-sinA0*sinA0);C=4.487;y=((1-sinA0*sinA0)*(1-sinA0*sinA0)-2*x*x)*cos(sigma);S=A*sigma+(B*x+C*y)*sin(sigma);A2=atan((cosu1*sin(lamda))/(b1*cos(lamda)-b2));if(sin(A1)>0){if(tan(A2)>0)A2=pi+fabs(A2);elseA2=2*pi-fabs(A2);}else{if(tan(A2)>0)A2=fabs(A2);elseA2=pi-fabs(A2);}A1=A1*3600*180/pi;A2=A2*3600*180/pi;A10=(int)A1/3600;A11=(int)A1/60-A10*60;A12=A1-A10*3600-A11*60;A20=(int)A2/3600;A21=(int)A2/60-A20*60;A22=A2-A20*3600-A21*60;printf("反算得到的方位角A1A2及大地线长S:\n%d %d %lf\n%d %d %lf\n%lf\n",A10,A11,A12,A20,A21,A22,S);}}四.程序执行结果:。
小学信息技术六年级上册第4课《算法的程序体验》教案(一)年级:六年级上册学科:信息技术版本:浙教版(2023)【教材分析】前面的课程主要让学生了解了计算机中实现算法的一般步骤,以及算法与计算机程序之间的关系。
计算机中实现算法通常包括抽象建模、设计算法、验证算法等步骤,前面的课程着重认识了抽象建模和设计算法,本节课则从验证算法着手,帮助学生使用代码来验证算法。
学情分析:授课对象为六年级学生,他们已经对计算机中实现算法的步骤和关系有了一定的了解,具备了一定的基础。
教学目标:1.让学生理解什么是算法,以及算法在计算机科学中的重要性。
2.通过简单的编程体验,让学生初步了解程序的逻辑结构。
3.培养学生的逻辑思维能力和问题解决能力。
教学重难点:教学重点理解算法的概念和作用。
掌握简单算法的设计和流程图绘制。
教学难点能够将复杂问题转化为算法并用流程图表达。
教学内容:1.算法的定义和理解2.程序的基本逻辑结构:顺序、选择、循环3.通过编程平台(如Scratch)进行简单的程序设计体验教学过程:一、导入新课(5分钟)1.提问:同学们,你们平时是如何解决数学问题或者日常生活中的问题的?(引导学生说出步骤)2.教师总结:这些解决问题的步骤其实就可以看作是一种算法。
算法就是解决问题的一系列明确的指令。
二、讲解算法(10分钟)1.介绍算法的概念,强调算法的逻辑性和可执行性。
2.通过实例(如煮鸡蛋的步骤)解释算法,让学生理解算法的特性。
三、介绍程序逻辑结构(15分钟)1.讲解程序的三种基本逻辑结构:顺序(按部就班)、选择(如果...那么...)、循环(重复执行)。
2.通过生活中的例子(如红绿灯控制)进一步解释这些逻辑结构。
四、编程体验(20分钟)1.使用Scratch等可视化编程工具,让学生亲自动手编写简单的程序,如“猜数字”游戏,体验程序的逻辑结构。
2.学生操作,教师巡回指导,解答学生在编程过程中遇到的问题。
五、总结反馈(5分钟)1.让学生分享编程体验的感受,回顾本节课学习到的内容。
《算法设计》学历案(第一课时)一、学习主题本课时学习主题为“算法设计基础”,旨在让学生初步了解算法的概念、算法在信息技术领域的重要性,以及如何通过基本逻辑结构进行简单的算法设计。
二、学习目标1. 知识与理解:掌握算法的基本概念,理解算法在计算机程序中的重要性。
2. 技能与应用:学会使用流程图表示简单问题的解决步骤,能够根据问题描述设计基本算法。
3. 情感态度与价值观:培养学生对信息技术学科的兴趣,提高其逻辑思维能力和问题解决能力。
三、评价任务1. 概念理解评价:通过课堂提问和课后小测验,评价学生对算法概念的理解程度。
2. 技能操作评价:通过学生设计的流程图和实际操作的正确性,评价其算法设计技能。
3. 作品展示评价:鼓励学生将设计的算法应用于实际问题的解决,并展示作品,进行互评和自评。
四、学习过程1. 导入新课(5分钟)通过生活中的实例(如排序、游戏规则等)引出算法的概念,激发学生学习兴趣。
2. 新课讲解(15分钟)(1)讲解算法的概念、特性和在信息技术领域的应用。
(2)介绍流程图的基本符号和作用,以及如何用流程图表示算法。
3. 实践操作(20分钟)(1)教师演示如何用流程图表示一个简单问题的解决步骤。
(2)学生尝试根据问题描述设计流程图,教师巡回指导,及时解答学生疑问。
4. 课堂小结(5分钟)总结本课时学习的重点内容,强调算法设计和流程图的重要性。
5. 布置作业(课后)(1)完成一个与本课时内容相关的实践作业,如设计一个排序算法的流程图。
(2)预习下一课时内容,为后续学习做好准备。
五、检测与作业1. 课堂检测:通过课堂小测验,检测学生对算法概念的理解程度。
2. 作业布置:布置与本课时内容相关的实践作业,要求学生将所学的算法设计知识应用于实际问题中。
3. 作业批改与反馈:教师批改作业后,及时给予学生反馈,指出存在的问题和不足,鼓励学生在后续学习中加以改进。
六、学后反思1. 教师反思:教师在课后应反思本课时的教学效果,总结教学中的优点和不足,为今后的教学提供借鉴。