实验报告阻尼牛顿222
- 格式:doc
- 大小:90.00 KB
- 文档页数:11
实验四、验证牛顿第二定律实验实验数据的处理已知牛顿第二定律:F=ma,为了验证该定律,我组采取了以下两种方式(已知福州地区重力加速度g=9.792N/ s-2):1、当物体系的总质量M一定时,验证外力F与加速度a成正比。
数据如下表所示(其中a计算值=F/(M+m)=mg/(M+m)):2、当物体系所受外力F一定时,验证物体系的质量M与加速度a成反比。
数据如下表所示(其中a计算值=F/(M+m)=mg/(M+m)):综上所述,该实验验证了牛顿第二定律,F=ma:当物体系质量m一定时,外力F与物体加速度a成正比;当物体系所受外力F一定时,物体系质量m与物体加速度a成反比。
实验思考与报告1、请谈谈验证牛顿第二定律实验的难点有哪些?答:(a)调整气垫导轨的水平;(b)拉力值的测量方法,且拉力与重力的区别;(c)气垫导轨的摩擦力怎么抵消;(d)当物体系的总质量M一定时,这个M的值最好为多大等。
2、如何指导学生做好验证牛顿第二定律。
答:首先,要让学生做好复习工作,了解实验器材及其注意事项、实验所设计的原理(即牛顿第二定律);其次,要锻炼学生的自主实验能力,要让学生通过团队合作,与伙伴讨论并设计来完成实验;最后,指导学生利用所得数据验证实验结果,并让学生自行完成实验报告。
3、设计一节探究牛顿第二定律的教案一、实验目的:1、使学生理解并掌握牛顿第二定律的内容并知道其确切含义。
2、让学生对加速度这一物理量有更进一步的认识,认识加速度的矢量性,认识加速度与合外力间的瞬时对应关系。
3、通过实验,提高学生的实验设计、实验操作技能,培养学生观察、分析、归纳、总结的能力。
4、利用“牛顿第二定律”解释实际生活中的相关物理现象。
二、实验仪器:多媒体、CAI软件、实验器材(细线、天平、砝码、弹簧秤、小车、夹子、钩码、刻度尺等)三、实验内容1、重难点:利用控制变量法,通过实验探究,建立“牛顿第二定律”。
2、教法与学法:教师引导,学生探究,以实验为主的探究式教学方法;学生分组进行实验,并各自对实验记录分析讨论得出各个小组的结论,最后全班同学进行比较性的探讨性的总结。
牛顿第二定律实验报告引言:物理学是一门研究物质运动以及与之相关的规律和现象的科学。
而牛顿第二定律,则是其中最基础且重要的定律之一。
本实验旨在通过实际操作和数据收集,验证牛顿第二定律,并探究质量、力和加速度之间的关系。
实验步骤:1. 实验所需材料和装置这次实验所需的材料和装置如下:一块光滑的水平轨道、一个小车、一只测力计、一组不同质量的物体和一根绳子。
2. 实验前准备首先,将轨道放置在平坦的地面上,并确保其水平。
然后,将测力计挂在轨道的底部并调零,以确保准确的测量。
接下来,将小车放在轨道上,并将一端的绳子固定在小车上。
3. 实验操作在操作实验之前,需要确定小车在水平轨道上的质量。
用测量工具称量小车的质量,并记录下来。
然后,通过在小车上增加不同质量的物体,给小车施加不同大小的力。
使用测力计将绳子的另一端连接到小车上,并确保绳子拉直。
接下来,缓慢地施加一定大小的力,使小车开始运动,并立即记录下所施加的力的数值。
根据实验的需要,可以重复上述步骤,每次改变施加的力的大小。
确保每次操作都是平稳进行的,并且准确记录下施加力和小车加速度的数值。
4. 数据处理和结果分析根据实验所获得的数据,我们可以计算出每次施加力的大小、小车质量以及小车的加速度。
根据牛顿第二定律的公式 F = ma,利用实验测得的力和质量数据,我们可以计算出加速度的数值。
同时,可以绘制出施加力和加速度之间的关系图,以便更好地理解它们之间的关联。
讨论和结论:通过本次实验,我们验证了牛顿第二定律。
从实验数据可以看出,当施加的力增加时,小车的加速度也随之增加,并且它们之间存在线性关系。
这个实验结果符合牛顿第二定律的预期,即力的大小与物体的质量和加速度之间成正比。
这也意味着物体的质量越大,施加相同大小的力时,加速度越小;反之亦然。
通过本次实验,我们进一步了解了牛顿第二定律的实际应用,并通过实验数据的处理和分析,掌握了实验设计和数据处理的方法。
总结:本次实验以验证牛顿第二定律为目的,通过实际操作和数据收集,得出了物体质量、施加力和加速度之间的关系。
实验:牛顿第二定律实验报告实验报告:牛顿第二定律一、实验目的1.验证牛顿第二定律:力和加速度的关系以及质量和加速度的关系。
2.理解力的概念、分类及作用效果。
3.掌握控制变量法在实验中的应用。
二、实验原理牛顿第二定律指出,物体的加速度与作用力成正比,与物体质量成反比。
数学公式表示为F=ma,其中F代表作用力,m代表质量,a代表加速度。
三、实验步骤1.准备实验器材:小车、小盘、轨道、金属片、砝码、滑轮、细绳、纸带等。
2.将小车放在轨道上,小盘通过细绳与小车连接,小盘上放置砝码,调整砝码质量。
3.接通电源,打开打点计时器,释放小车,小车在砝码的拉动下开始运动。
4.记录小车的运动情况,包括小车的位移、时间以及加速度。
5.改变砝码的质量,重复步骤3和4,至少进行5组实验。
6.分析实验数据,得出结论。
四、实验数据分析根据表格中的数据,我们可以看出,当作用力(砝码质量)增加时,小车的加速度也相应增加。
当作用力不变时,增加小车的质量会导致加速度减小。
这些数据与牛顿第二定律的理论相符。
五、实验结论通过本实验,我们验证了牛顿第二定律的正确性。
实验结果表明,物体的加速度与作用力成正比,与物体质量成反比。
实验中我们使用了控制变量法,确保了数据的可靠性。
此外,通过实验,我们进一步理解了力的概念、分类及作用效果,提高了实验操作技能和数据分析能力。
六、实验讨论与改进尽管本次实验取得了成功,但仍存在一些可以改进的地方。
首先,由于实验中使用的砝码质量有限,对于小车加速度的测量可能存在误差。
为了提高实验精度,可以使用更精确的测量设备来记录小车的运动情况。
其次,为了更好地控制实验条件,可以采取一些措施来消除摩擦力等干扰因素的影响。
此外,还可以进一步拓展实验内容,研究不同形状、材料的小车在相同作用力下的加速度情况。
通过不断改进和完善实验方案,我们可以进一步提高实验效果和科学价值。
验证牛顿第二定律实验报告实验报告:验证牛顿第二定律引言牛顿第二定律是经典力学中的重要定律之一,描述了物体受力时加速度的变化情况。
本实验旨在通过对物体施加不同大小的力,测量加速度与施加力的关系,验证牛顿第二定律。
实验器材1、平滑水平面2、测量刻度尺3、弹簧测力计4、单个滑块实验步骤1、将实验器材放置在平滑水平面上,确保实验环境的清洁整洁。
2、使用测量刻度尺测量滑块的质量,确认滑块的质量为1.0kg,记录质量值为m。
3、在实验过程中固定滑块,使用弹簧测力计对滑块施加固定的力F,记录所施加的力F值。
4、按照上述方式,除F外,使用不同的力值对滑块施加力,记录所施加的力值和加速度的值。
5、重复以上实验步骤2-4,分别进行3次实验,取平均数作为最终实验结果。
实验结果测量的加速度数据如下表所示:F(N)加速度a(m/s²)1 1.052 2.053 2.964 4.165 4.916 6.187 6.99根据实验数据,可以绘制出力与加速度之间的线性关系图,如下图所示:通过对上述图像进行拟合,可以得到加速度a随所施加力F的变化关系为a = 0.836F + 0.1934,其相关系数R²为0.9975。
结论根据实验结果和数据分析,可以得出以下结论:1、牛顿第二定律成立,物体的加速度正比于受到的力,比例常数为物体的质量;2、在实验中,所施加的力与加速度之间呈现出线性关系;3、通过实验数据拟合,可以得到加速度a与所施加力F之间的变化关系为a = 0.836F + 0.1934,证明了牛顿第二定律的正确性。
参考文献无致谢感谢实验室中所有老师和同学对本次实验的帮助和支持。
牛顿第二定律物理实验报告嘿,大家好!今天咱们来聊聊牛顿的第二定律,别担心,听起来复杂,其实一点都不。
想象一下,牛顿就像个穿着长袍的老爷爷,站在一个风和日丽的日子里,忽然对着苹果树上的一个苹果说:“嘿,你这小家伙,掉下来吧!”结果,苹果就真的掉了下来。
这就是牛顿的第一步,但我们今天要深入一点,来看看牛顿的第二定律。
这个定律说的是:物体的加速度和它所受的力成正比,而和它的质量成反比。
听上去像是在讲数学课,但其实咱们日常生活中随处可见。
为了更好地理解这个定律,我们决定来个实验。
咱们找了几个小朋友,准备了一辆小车和一些重物。
小车就像个小跑车,重物就像给它加油。
我们先把小车放在一个平坦的桌子上,看看它在没有任何力量作用下会怎样。
小朋友们兴奋得就像过年一样,准备观察小车的“反应”。
结果,车子一点动静都没有,静静地待着,仿佛在说:“谁来推动我呀?”这时候,大家明白了,牛顿说得对,没力量就没动静。
我们开始施加力量。
有人推,有人拉,小车终于动起来了!哇,大家都欢呼起来,仿佛小车成了他们的明星。
我们逐渐加大力度,小车的速度也跟着飞快起来。
这个时候,有的小朋友开始想:“如果我放上一个更重的东西,会不会变得更慢呢?”于是,大家又把重物放上去,果然,小车慢了下来。
大家顿时明白,原来质量越大,加速度就越小,这可真是个简单又好玩的道理。
随着实验的深入,大家开始讨论起力、质量和加速度的关系。
小朋友们纷纷抛出自己的看法,“如果我用力推,小车就会更快,对吧?”我点了点头,心里想着,牛顿肯定会为他们的观察感到欣慰。
然后,一个小朋友突然来了句:“如果我在小车上再放个冰淇淋,那小车会不会更慢啊?”全场哄堂大笑,大家都在想象小车背着一桶冰淇淋在跑,那可真是个悲剧!我们又进行了几个不同的实验。
我们试着在小车上放上不同重量的物品,看小车的速度变化。
结果发现,随着重量的增加,小车的速度真的变得慢得像蜗牛一样。
这个现象就像是生活中的道理,我们背负的负担越重,前进的速度就会越慢。
一、实验目的1. 了解阻尼振动的基本概念和特点;2. 掌握阻尼振动实验的基本操作和数据处理方法;3. 研究不同阻尼系数对阻尼振动的影响;4. 分析阻尼振动过程中的能量损失和振幅衰减规律。
二、实验原理阻尼振动是指在外力作用下,振动系统由于阻尼力的作用,其振动幅度逐渐减小,最终趋于稳定的过程。
阻尼系数是描述阻尼力大小的重要参数,它反映了阻尼对振动系统的影响程度。
在阻尼振动实验中,我们通常采用简谐振动系统,如弹簧振子、摆等,来模拟阻尼振动现象。
根据牛顿第二定律,阻尼振动系统的运动方程可表示为:m d²x/dt² + c dx/dt + k x = F(t)其中,m为质量,c为阻尼系数,k为弹簧刚度,x为位移,F(t)为外力。
三、实验装置1. 弹簧振子:包括弹簧、质量块、支架等;2. 阻尼装置:用于调节阻尼系数;3. 传感器:用于测量振动位移;4. 数据采集器:用于记录实验数据;5. 计算机:用于数据处理和分析。
四、实验步骤1. 将弹簧振子固定在支架上,调节阻尼装置,使阻尼系数为0;2. 用传感器测量弹簧振子的初始振幅;3. 在弹簧振子上施加外力,使其开始振动;4. 使用数据采集器记录振动过程中的位移数据;5. 改变阻尼系数,重复步骤3和4,记录不同阻尼系数下的振动数据;6. 分析实验数据,研究不同阻尼系数对振幅衰减和能量损失的影响。
五、实验数据与分析1. 阻尼系数为0时,弹簧振子进行无阻尼振动,振幅保持不变;2. 随着阻尼系数的增加,振幅逐渐减小,衰减速度加快;3. 当阻尼系数达到一定程度时,振幅趋于稳定,表明振动系统已达到稳态;4. 阻尼系数与振幅衰减速度之间存在一定关系,可用阻尼系数与振幅衰减率的比值来描述。
六、结论1. 阻尼振动是振动系统在外力作用下,由于阻尼力的作用,振动幅度逐渐减小,最终趋于稳定的过程;2. 阻尼系数是描述阻尼力大小的重要参数,它反映了阻尼对振动系统的影响程度;3. 阻尼系数与振幅衰减速度之间存在一定关系,阻尼系数越大,振幅衰减速度越快;4. 通过实验,我们掌握了阻尼振动实验的基本操作和数据处理方法,为研究振动系统在实际工程中的应用提供了理论依据。
牛顿第二定律实验报告牛顿第二定律实验报告引言:牛顿第二定律是经典力学中的重要定律之一,它描述了物体的加速度与作用力的关系。
为了验证牛顿第二定律的准确性,我们进行了一系列实验。
本实验旨在通过测量物体的质量、加速度和作用力,来验证牛顿第二定律的有效性。
实验步骤:1. 准备工作:在实验开始之前,我们首先准备了一台光滑的水平桌面、一个光滑的滑轮、一段细绳、一个小物块和一个弹簧测力计。
2. 悬挂物块:我们将细绳固定在滑轮上,然后将物块系在细绳的另一端。
3. 测量质量:使用天平测量物块的质量,并记录下来。
4. 测量加速度:将物块轻轻推动,让它在水平桌面上运动,同时使用计时器记录物块从静止到达一定速度所用的时间。
根据物块的位移和时间的关系,可以计算出物块的加速度。
5. 测量作用力:将弹簧测力计连接到细绳上,然后逐渐拉紧细绳,直到物块开始运动。
此时,弹簧测力计的示数即为物块所受的作用力。
实验结果与讨论:在进行实验时,我们对不同质量的物块进行了多次测量,并记录下了相应的数据。
通过计算,我们得到了物块的加速度和作用力的数值。
根据牛顿第二定律的公式 F = m * a,其中 F 为作用力,m 为物体的质量,a 为物体的加速度,我们可以将实验数据代入公式进行验证。
在实验过程中,我们发现物块的加速度与作用力成正比,而与物块的质量无关。
这与牛顿第二定律的预测相符。
实验结果表明,当作用力增大时,物块的加速度也随之增大;而当物块的质量增大时,加速度则减小。
这进一步验证了牛顿第二定律的有效性。
实验误差:在进行实验时,我们必须考虑到实验误差的存在。
实验误差可能来自于测量仪器的精度、实验环境的影响以及实验操作的不准确等因素。
为了尽量减小误差的影响,我们在实验过程中进行了多次测量,并取其平均值作为最终结果。
结论:通过本次实验,我们成功验证了牛顿第二定律的有效性。
实验结果表明,牛顿第二定律的描述与实际物理现象相符合。
物体的加速度与作用力成正比,与物体的质量无关。
牛顿第二定律的验证实验报告实验报告:牛顿第二定律的验证摘要:本实验利用移动卡尺,弹簧推动器等实验仪器,通过测量物体的质量,加速度,推力等物理量数据,验证牛顿第二定律——当一个物体受到力作用时,加速度与作用力成正比例,与物体质量成反比例。
引言:牛顿第二定律是经典力学的基石之一,在科学研究和现代生产中有着广泛的应用。
验证牛顿第二定律有利于认识其在生产和科研中的实际应用。
实验装置:本实验的装置如下图所示:实验内容:1.测量运动物体的质量,即挂上物体后引伸计读数的质量M。
2.测量弹簧推动器弹簧长度L0。
3.测量物体做匀加速运动时的时间t。
4.运用公式a=F/M,求出物体的加速度a。
5.利用公式F=-kΔL,求出物体受到的推力F。
6.利用公式F=Ma,验证牛顿第二定律。
实验结果:本实验中取样的数据如下表所示:物品名称质量M(kg)弹簧长度L0(mm)弹簧长度L1(mm)时间t(s)A 0.1 100 150 2.36B 0.2 100 175 1.88C 0.3 100 200 1.54D 0.4 100 220 1.32E 0.5 100 245 1.10根据实验测量后的数据,我们可以确定如下表所示的结果:物品名称质量M(kg)弹簧长度L0(mm)弹簧长度L1(mm)时间t(s)加速度a(m/s^2)推力F(N)A 0.1 100 150 2.36 0.344 0.34B 0.2 100 175 1.88 0.832 0.17C 0.3 100 200 1.54 1.380 0.27D 0.4 100 220 1.32 2.041 0.41E 0.5 100 245 1.10 2.732 0.68根据以上数据计算得到的加速度与推力如图示:结论:物体的加速度与推力满足牛顿二定律。
表中的实验数据和计算结果验证了牛顿第二定律的正确性。
致谢:本实验的成功完成得到了语文老师与物理老师的支持与指导,在此表示由衷的感谢。
第1篇一、实验目的1. 了解阻尼系数的概念和测量方法。
2. 掌握使用不同方法测定阻尼系数的原理和步骤。
3. 通过实验,验证阻尼系数在不同条件下的变化规律。
二、实验原理阻尼系数是描述阻尼作用强度的一个物理量,其定义为阻尼力与外力之比。
在振动系统中,阻尼系数的大小直接影响系统的振动特性,如振幅、频率等。
本实验通过以下几种方法测定阻尼系数:1. 振幅衰减法:通过测量振动系统在无外力作用下的自由衰减振动,计算阻尼系数。
2. 频率响应法:通过测量振动系统在不同频率下的响应,计算阻尼系数。
3. 波尔共振法:利用波尔共振仪,测量振动系统在不同阻尼力矩下的共振频率,计算阻尼系数。
三、实验器材1. 波尔共振仪2. 频率计3. 振幅传感器4. 信号发生器5. 示波器6. 电源7. 数据采集器8. 计算机及实验软件四、实验步骤1. 振幅衰减法:(1)将振动系统置于波尔共振仪上,确保系统稳定。
(2)启动信号发生器,产生频率为f0的正弦波信号。
(3)将信号发生器输出信号接入振动系统,观察振幅变化。
(4)记录振动系统自由衰减振动的振幅随时间的变化数据。
(5)根据振幅衰减数据,计算阻尼系数。
2. 频率响应法:(1)将振动系统置于波尔共振仪上,确保系统稳定。
(2)使用频率计测量振动系统的自振频率。
(3)调整信号发生器输出信号的频率,使其等于振动系统的自振频率。
(4)观察振动系统的响应,记录振幅和相位变化数据。
(5)根据频率响应数据,计算阻尼系数。
3. 波尔共振法:(1)将振动系统置于波尔共振仪上,确保系统稳定。
(2)调整波尔共振仪的阻尼力矩,使振动系统达到共振状态。
(3)记录振动系统的共振频率。
(4)改变阻尼力矩,重复步骤(2)和(3),得到多个共振频率。
(5)根据共振频率数据,计算阻尼系数。
五、实验结果与分析1. 振幅衰减法:根据实验数据,计算得到阻尼系数为0.05。
2. 频率响应法:根据实验数据,计算得到阻尼系数为0.04。
太原理工大学机械学院机测系课程上机实验报告课程名称:机械优化设计班级塑机日期2012.6.6 成绩评定姓名杨士东实验室图强机房老师签名实验名称利用牛顿法求解相关函数的极小值点所用软件C++ DEV实验目的及内容实验目的:1、明确牛顿法基本原理及程序框图2、编制牛顿法程序3、用考核题对所编程序进行考核2、牛顿法程序考核题01.0]00[X10)1(2)1(4)(T212221==+++-++=ε,梯度精度,初始点:xxxxXf实验原理步骤、实验原理:实验步骤:1,画流程图,编写程序;2,将目标函数代入;3,编译运行,将结果保存实验结果及分析**********阻尼牛顿法计算结果**********++++++一维搜索方法:黄金分割法++++++初始坐标:x( 0)=[ 0.0000000, 0.0000000], f( 0)= 16.0000000迭代轮数k= 1x( 1)=[ -1.1249988, 0.7499992], f( 1)= 9.8125000迭代精度:0.000009986迭代轮数k= 2x( 2)=[ -1.1250000, 0.7500000], f( 2)= 9.8125000迭代精度:0.000000116*********************阻尼牛顿法法优化最优点及目标函数值为:x( * )=[ -1.1250000, 0.7500000], f( * )= 9.8125000迭代精度:0.000000116(写不完时,可另附稿纸。
)/*csssqj.cpp */#include <string.h>#include <stdio.h>#include <math.h>#include <stdlib.h>#include <time.h>#define N 2 /*优化设计维数*/#define EPSIN 0.000001 /*迭代精度*/#define H_QJ 1.0 /*初始区间搜索步长*/#define Y_F 1 /*一维搜索方法选择:1——黄金分割法*//* 2——二次插值法*/FILE *fp;char outname[50]="阻尼牛顿法计算结果.txt"; /*计算结果输出文件*//*给出初始点坐标*/void csd_x(double x0[]){int i;for(i=0;i<N;i++) /*初始点为坐标原点的情况*/x0[i]=0.0;return;}/*目标函数*/double hanshu(double x[])double f;f=4.0*(x[0]+1.0)*(x[0]+1.0)+2.0*(x[1]-1.0)*(x[1]-1.0)+x[0]+x[1]+10.0; /*阻尼牛顿法*/return f;}/*函数的梯度*/void gread(double x[],double gf[]){/*阻尼牛顿法*/gf[0]=8.0*(x[0]+1.0)+1.0;gf[1]=4.0*(x[1]-1.0)+1.0;return;}/*Heisen矩阵*/void heisen(double x[],double hei[][N]){hei[0][0]=8.0;hei[0][1]=0.0;hei[1][0]=0.0;hei[1][1]=4.0;return;}/*计算f(xk+as)*/double xkadd(double x[],double d[],double a){int i;double x1[N];for(i=0;i<N;i++)x1[i]=x[i]+a*d[i];return hanshu(x1);}/*输出选定的一维迭代方法*/void ywddf(int yw){switch(yw){case 1:fprintf(fp,"++++++一维搜索方法:黄金分割法++++++\n\n");break;case 2:fprintf(fp,"++++++一维搜索方法:二次插值法++++++\n\n");break;}return;}/*输出当前迭代点坐标及目标函数值*/double xfout(double x[],int m){int j;double f;f=hanshu(x);if(-1==m)fprintf(fp," x( * )=[");elsefprintf(fp," x(%3d)=[",m);for(j=0;j<N-1;j++)fprintf(fp,"%15.7lf,",x[j]);if(-1==m)fprintf(fp,"%15.7lf], f( * )=%15.7lf\n",x[N-1],f);elsefprintf(fp,"%15.7lf], f(%3d)=%15.7lf\n",x[N-1],m,f);return f;}/*初始搜索区间的确定*/void csssqj(double x[],double d[],double h,double ab[]){double a1,a2,a3,f1,f2,f3;a2=0.0;a3=a2+h;f2=xkadd(x,d,a2);f3=xkadd(x,d,a3);if(f3>f2){a2=a3;a3=0.0;f1=f2;f2=f3;f3=f1;h=-h;}do{a1=a2;a2=a3;f1=f2;f2=f3;a3=a2+h;f3=xkadd(x,d,a3);h=2*h;}while(f3<f2);if(h>0.0){ab[0]=a1;ab[1]=a3;}else{ab[0]=a3;ab[1]=a1;}return;}/*黄金分割法*/void goldcut(double x[],double d[],double h,double ebsin) {double a1,a2,f1,f2,a,b,ab[2];int i;csssqj(x,d,h,ab);a=ab[0];b=ab[1];a1=b-0.618*(b-a);f1=xkadd(x,d,a1);a2=a+0.618*(b-a);f2=xkadd(x,d,a2);do{if(f1>f2){a=a1;a1=a2;f1=f2;a2=a+0.618*(b-a);f2=xkadd(x,d,a2);}else{b=a2;a2=a1;f2=f1;a1=b-0.618*(b-a);f1=xkadd(x,d,a1);}}while(b-a>ebsin);for(i=0;i<N;i++)x[i]+=(b+a)*d[i]/2;return;}/*二次插值法*/int rccz(double x[],double d[],double h,double ebsin) {double a1,a2,a3,a4,f1,f2,f3,f4,c1,c2,ab[2];int i,p=0,k=0;csssqj(x,d,h,ab);a1=ab[0];a3=ab[1];a2=(a1+a3)/2;f1=xkadd(x,d,a1);f2=xkadd(x,d,a2);f3=xkadd(x,d,a3);while(1){c1=(f3-f1)/(a3-a1);c2=((f2-f1)/(a2-a1)-c1)/(a2-a3);if(0==c2){p=1;break;}a4=0.5*(a1+a3-c1/c2);if((a4-a1)*(a3-a4)<=0.0){p=2;break;}f4=xkadd(x,d,a4);if(1==k&&fabs(a4-a2)<=ebsin)break;if(a4<a2){if(f2>f4){f1=f2;a1=a2;k=1;a2=a4;f2=f4;}else{a3=a4;f3=f4;}}else{if(f2>f4){f3=f2;a3=a2;k=1;a2=a4;f2=f4;}else{a1=a4;f1=f4;}}}if(0==p)f1=f4-f2?a4:a2;elsef1=a2;for(i=0;i<N;i++)x[i]+=f1*d[i];return p;}/*矩阵求逆*/void atoa_1(double a[][N],double b[][N]) {int i,j,k,m;double fact,ebs=0.0;for(i=0;i<N;i++)for(j=0;j<N;j++){b[i][j]=0.0;ebs+=a[i][j]*a[i][j];}ebs=sqrt(ebs)/(N*N*100);for(i=0;i<N;i++)b[i][i]=1.0;for(i=0;i<N;i++){if(fabs(a[i][i])<ebs){for(k=i;k<N;k++){if(fabs(a[i][i])>ebs){for(m=0;m<N;m++){fact=a[i][m];a[i][m]=a[k][m];a[k][m]=fact;fact=b[i][m];b[i][m]=b[k][m];b[k][m]=fact;}break;}}}fact=a[i][i];for(k=0;k<N;k++){a[i][k]/=fact;b[i][k]/=fact;}for(k=0;k<i;k++){fact=a[k][i];for(m=0;m<N;m++){a[i][m]-=a[i][m]*fact;b[i][m]-=b[i][m]*fact;}}for(k=i+1;k<N;k++){fact=a[k][i];for(m=0;m<N;m++){a[i][m]-=a[i][m]*fact;b[i][m]-=b[i][m]*fact;}}}return;}/*阻尼牛顿法*/void newtow_method(double x[],double h,double ebsin,int yw){double d[N],t,f,s[N],hei[N][N],hei_1[N][N];int i,j,k=1;fprintf(fp,"**********阻尼牛顿法计算结果**********\n\n");ywddf(yw); /*输出一维迭代方法*/ fprintf(fp,"初始坐标:\n");f=xfout(x,0);fprintf(fp,"\n");gread(x,d);do{heisen(x,hei);atoa_1(hei,hei_1);for(i=0;i<N;i++){s[i]=0.0;for(j=0;j<N;j++)s[i]+=hei_1[i][j]*d[j];}switch(yw){case 1:goldcut(x,s,h,ebsin);break;case 2:j=rccz(x,s,h,ebsin);break;}gread(x,d);fprintf(fp,"迭代轮数 k=%3d \n",k);f=xfout(x,k);t=0;for(i=0;i<N;i++)t+=d[i]*d[i];t=sqrt(t);fprintf(fp," 迭代精度:%15.9lf\n",t);k++;}while(t>ebsin);fprintf(fp,"\n*********************\n");fprintf(fp,"阻尼牛顿法法优化最优点及目标函数值为:\n");f=xfout(x,-1);fprintf(fp," 迭代精度:");fprintf(fp,"%15.9lf\n",t);return;}main(){double x0[N],h,ebsin;int yw;csd_x(x0); /*初始坐标*/h=H_QJ;ebsin=EPSIN;yw=Y_F;fp=fopen(outname,"w");newtow_method(x0,h,ebsin,yw); /*调用阻尼牛顿法*/fclose(fp);return 0;}备注:不交此报告者,本次实验为“不合格”。