2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  課 程 設(shè) 計 報 告</p><p>  課程名稱 數(shù)值分析 </p><p>  課題名稱 最速下降法 </p><p>  專 業(yè) 信息與計算科學(xué) </p><p>  班 級

2、 </p><p>  學(xué) 號 </p><p>  姓 名 </p><p>  指導(dǎo)教師 </p><p>  2013年 1月 日</p><p>  一、設(shè)計內(nèi)容與設(shè)計要求&l

3、t;/p><p><b>  1.)設(shè)計內(nèi)容:</b></p><p>  用最速下降法求最優(yōu)解:</p><p><b>  給定初始點</b></p><p><b>  2.設(shè)計要求:</b></p><p>  課程設(shè)計報告正文內(nèi)容</p>

4、;<p>  問題的描述及算法設(shè)計;</p><p>  算法的流程圖(要求畫出模塊圖);</p><p>  算法的理論依據(jù)及其推導(dǎo);</p><p>  相關(guān)的數(shù)值結(jié)果(通過程序調(diào)試),;</p><p>  數(shù)值計算結(jié)果的分析;</p><p>  附件(所有程序的原代碼,要求對程序?qū)懗霰匾淖⑨專?/p>

5、。</p><p><b>  書寫格式</b></p><p>  a.要求用A4紙打印成冊</p><p>  b.正文格式:一級標(biāo)題用3號黑體,二級標(biāo)題用四號宋體加粗,正文用小四號宋體;行距為22。</p><p>  c.正文的內(nèi)容:正文總字數(shù)要求在3000字左右(不含程序原代碼)。</p><

6、;p>  d.封面格式如下頁。</p><p><b>  考核方式</b></p><p>  指導(dǎo)老師負責(zé)驗收程序的運行結(jié)果,并結(jié)合學(xué)生的工作態(tài)度、實際動手能力、創(chuàng)新精神和設(shè)計報告等進行綜合考評,并按優(yōu)秀、良好、中等、及格和不及格五個等級給出每位同學(xué)的課程設(shè)計成績。具體考核標(biāo)準(zhǔn)包含以下幾個部分:</p><p>  a.平時出勤 (占

7、10%)</p><p>  b.系統(tǒng)需求分析、功能設(shè)計、數(shù)據(jù)結(jié)構(gòu)設(shè)計及程序總體結(jié)構(gòu)合理與否(占10%)</p><p>  c.程序能否完整、準(zhǔn)確地運行,個人能否獨立、熟練地調(diào)試程序(占40%)</p><p>  d.設(shè)計報告(占30%)</p><p>  注意:不得抄襲他人的報告(或給他人抄襲),一旦發(fā)現(xiàn),成績?yōu)榱惴帧?lt;/p&g

8、t;<p>  e.獨立完成情況(占10%)。</p><p><b>  課程驗收要求</b></p><p>  a.判定算法設(shè)計的合理性,運行相關(guān)程序,獲得正確的數(shù)值結(jié)果。</p><p><b>  b.回答有關(guān)問題。</b></p><p>  c.提交課程設(shè)計報告。<

9、/p><p>  d.提交軟盤(源程序、設(shè)計報告文檔)。</p><p>  e.依內(nèi)容的創(chuàng)新程度,完善程序情況及對程序講解情況打分。</p><p><b>  三、進度安排</b></p><p>  班級: 信息與計算科學(xué):1101、1102、1103</p><p><b>  主講

10、教師: </b></p><p><b>  輔導(dǎo)教師: </b></p><p><b>  上機時間安排:</b></p><p>  第17教學(xué)周 (課程設(shè)計算法設(shè)計) </p><p>  星期一: 8:10---11:50 14:10---17:30 1--A--

11、404</p><p>  星期二: 10:10---11:50 15:20---17:30 1--A--404</p><p>  星期三: 8:10---11:50 14:10---17:30 1--A--404</p><p>  星期四: 8:10---10:50 14:10---17:30 1--A--404</p>

12、<p>  星期五: 8:10---11:50 14:10---17:30 1--A--404</p><p>  第18教學(xué)周 (課程設(shè)計算法設(shè)計與實現(xiàn)、報告撰寫)</p><p>  星期一: 8:10---11:50 14:10---17:30 1--A--404</p><p>  星期二: 10:10---11:50

13、 15:20---17:30 1--A--404</p><p>  星期三: 8:10---11:50 14:10---17:30 1--A--404</p><p>  星期四: 8:10---10:50 14:10---17:30 1--A--404</p><p>  星期五: 8:10---11:50 14:10---1

14、7:30 1--A--404</p><p>  課程設(shè)計算法設(shè)計答辯與報告提交、成績評定</p><p>  星期六: 8:10---11:50 14:10---17:30 1--A--404</p><p>  星期日: 8:10---11:50 14:10---17:30 1--A--404</p><p>  注

15、: 由于系部機房已排滿,故采用在教學(xué)樓教室,學(xué)生自帶手提電腦進行本課程設(shè)計。</p><p><b>  目錄</b></p><p><b>  一、摘要1</b></p><p><b>  二、問題的提出1</b></p><p><b>  三、算法分析

16、1</b></p><p><b>  四、計算步驟2</b></p><p><b>  五、流程圖3</b></p><p><b>  六、運行測試3</b></p><p><b>  七、程序源碼5</b></p>

17、<p>  理學(xué)院課程設(shè)計評分表10</p><p><b>  一、摘要</b></p><p>  在數(shù)值分析中,數(shù)值積分在實際生活運用當(dāng)中十分廣泛,比如在大氣科學(xué)和動力氣象學(xué)中有著舉足輕重的地位。本文涉及的是用最速下降法求解非線性方程組,對最速下降法的原理,計算步驟,以及計算過程的流程圖都做了詳細的解釋。算法運用的是JAVA,JAVAWeb,語言

18、來實現(xiàn)的。</p><p><b>  二、問題的提出</b></p><p>  用最速下降法求最優(yōu)解:</p><p><b>  給定初始點</b></p><p><b>  三、算法分析</b></p><p>  最速下降法又稱為梯度法,是1

19、847年由著名數(shù)學(xué)家Cauchy給出的。他是解析法中最古老的一種,其他解析方法或是它的變形,或是受它的啟發(fā)而得到的,因此它是最優(yōu)化方法的基礎(chǔ)。</p><p>  設(shè)無約束問題中的目標(biāo)函數(shù)一階連續(xù)可微。</p><p>  最速下降法的基本思想是:從當(dāng)前點出發(fā),取函數(shù)在點處下降最快的方向作為我們的搜索方向.由的Taylor展式知</p><p>  略去的高階無窮小

20、項不計,可見取時,函數(shù)值下降得最多。于是,我們可以構(gòu)造出最速下降法的迭代步驟。</p><p>  在求解非線性方程組 的一組根。首先是定義一個目標(biāo)函數(shù) 使目標(biāo)函數(shù)達到最小的是我們尋找的一組解,這是非線性最小二乘法問題。</p><p>  如果第步求得一組解,使得 </p><p>  則認為是原方程組滿足一定精度的要

21、求的一組解。</p><p><b>  四、計算步驟</b></p><p>  最速下降法求解非線性方程組實根的計算過程</p><p>  選取一組初值x0,x1,x2,…</p><p><b>  計算目標(biāo)函數(shù)值</b></p><p>  若F<ε,則,即為

22、方程組的一組實根,過程結(jié)束;否則繼續(xù);</p><p>  計算目標(biāo)函數(shù)在(x0,x1,x2,…)點的偏導(dǎo)數(shù),i=0,1,...,n-1</p><p>  (5)計算,i=0,1,…,n-1</p><p>  (6)計算,i=0,1,…,n-1</p><p><b>  其中λ=F/D</b></p>

23、<p>  重復(fù)(1)~(6)歩,知道滿足精度要求為止。</p><p>  在上述過程中,如果D=0,則說明遇到了目標(biāo)函數(shù)的局部極值點,此時可改變初值再重新計算。</p><p><b>  五、流程圖</b></p><p>  下面根據(jù)最速下降法計算步驟畫出流程圖:</p><p><b> 

24、 六、運行測試</b></p><p>  1.啟動程序后,顯示的調(diào)試界面</p><p>  2.在精度的下拉欄中選取合適的精度</p><p>  例1:精度為:0.0000001,運行結(jié)果為:</p><p>  例2:精度為:0.000000001,運行結(jié)果為:</p><p><b> 

25、 七、程序源碼</b></p><p><b>  1:程序主類</b></p><p>  import java.util.ArrayList;</p><p>  import java.util.List;</p><p>  import java.util.Map;</p><

26、p>  import com.opensymphony.xwork2.ActionContext;</p><p>  import com.opensymphony.xwork2.ActionSupport;</p><p>  public class NLEquations extends ActionSupport{</p><p>  privat

27、e double eps;</p><p>  public double getEps() {</p><p>  return eps;</p><p><b>  }</b></p><p>  public void setEps(double eps) {</p><p>  this.

28、eps = eps;</p><p><b>  }</b></p><p>  public String solutionQuation(){</p><p>  NLEquationsBiz nleqbiz = new NLEquationsBiz();</p><p>  double[] x={1.5,7.5,

29、-6.0};</p><p>  List answer = new ArrayList();</p><p>  ActionContext context = ActionContext.getContext();</p><p>  Map request = (Map)context.get("request");</p>

30、<p>  if(nleqbiz.getRootsetGrad(3, x, 600, eps)){</p><p>  for(int i=0;i<3;++i){</p><p>  answer.add(x[i]);</p><p>  System.out.println(x[i]);</p><p><b> 

31、 }</b></p><p>  request.put("answer", answer);</p><p><b>  }else{</b></p><p>  System.out.println("求解失??!");</p><p>  answer.add(&q

32、uot;The solution is not exist!");</p><p>  request.put("answer", answer);</p><p><b>  }</b></p><p>  return SUCCESS;</p><p><b>  }</

33、b></p><p><b>  }</b></p><p>  定義非線性方程組的類</p><p>  public class NLEquationsBiz {</p><p><b>  /**</b></p><p>  * @param n 方程的個數(shù),

34、也是未知數(shù)的個數(shù)</p><p>  * @param x 存放初值</p><p>  * @param nMaxIt 迭代次數(shù)</p><p>  * @param eps精度控制(精確值)</p><p><b>  * @return</b></p><p><b> 

35、 */</b></p><p>  public boolean getRootsetGrad(int n,double[] x,int nMaxIt,double eps){</p><p><b>  int l,j;</b></p><p>  double f,d,s;</p><p>  doubl

36、e [] y = new double[n];</p><p>  l = nMaxIt;</p><p>  f= func(x,y);</p><p>  while(f>=eps){</p><p><b>  l=l-1;</b></p><p><b>  if(l==0

37、){</b></p><p>  return true;</p><p><b>  }</b></p><p><b>  d=0.0;</b></p><p>  for(j=0;j<=n-1;j++){</p><p>  d=d+y[j]*y[j]

38、;</p><p><b>  }</b></p><p>  if(d+1.0==1.0){</p><p>  return false;</p><p><b>  }</b></p><p><b>  s=f/d;</b></p>

39、<p>  for(j=0;j<=n-1;j++){</p><p>  x[j]=x[j]-s*y[j];</p><p><b>  }</b></p><p>  f=func(x,y);</p><p><b>  }</b></p><p>  r

40、eturn nMaxIt>1;</p><p><b>  }</b></p><p>  public double func(double[]x,double[]y){</p><p>  double z,f1,f2,f3,df1,df2,df3;</p><p>  f1=x[0]-5.0*x[1]*x[

41、1]+7.0*x[2]*x[2]+12.0;</p><p>  f2=3.0*x[0]*x[1]+x[0]*x[2]-11.0*x[0];</p><p>  f3=2.0*x[1]*x[2]+40.0*x[0];</p><p>  z=f1*f1+f2*f2+f3*f3;</p><p><b>  df1=1.0;</

42、b></p><p>  df2=3.0*x[1]+x[2]-11.0;</p><p><b>  df3=40.0;</b></p><p>  y[0]=2.0*(f1*df1+f2*df2+f3*df3);</p><p>  df1=10.0*x[1];</p><p>  df2

43、=3.0*x[0];</p><p>  df3=2.0*x[2];</p><p>  y[1]=2.0*(f1*df1+f2*df2+f3*df3);</p><p>  df1=14.0*x[2];</p><p><b>  df2=x[0];</b></p><p>  df3=2.0*

44、x[1];</p><p>  y[2]=2.0*(f1*df1+f2*df2+f3*df3);</p><p><b>  return z;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  

45、3:算法分析的界面程序</p><p>  <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%></p><p><b>  <%</b></p><p>  String path

46、= request.getContextPath();</p><p>  String basePath = request.getScheme() + "://"</p><p>  + request.getServerName() + ":" + request.getServerPort()</p><p>  +

47、path + "/";</p><p><b>  %></b></p><p><b>  <html></b></p><p><b>  <head></b></p><p>  <title>最速下降法--算

48、法分析</title></p><p><b>  </head></b></p><p><b>  <body></b></p><p><b>  <center></b></p><p>  <jsp:include

49、 page="index.jsp"></jsp:include></p><p><b>  <div></b></p><p>  <img src="img/1.png"></p><p><b>  </div></b>&l

50、t;/p><p><b>  </center></b></p><p><b>  </body></b></p><p><b>  </html></b></p><p><b>  4:計算步驟界面</b></

51、p><p>  <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%></p><p><b>  <%</b></p><p>  String path = request.getCon

52、textPath();</p><p>  String basePath = request.getScheme() + "://"</p><p>  + request.getServerName() + ":" + request.getServerPort()</p><p>  + path + "/&q

53、uot;;</p><p><b>  %></b></p><p>  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"></p><p><b>  <html></b></p>

54、<p><b>  <head></b></p><p>  <title>最速下降法--計算步驟</title></p><p><b>  </head></b></p><p><b>  <body></b></p&g

55、t;<p><b>  <center></b></p><p>  <jsp:include page="index.jsp"></jsp:include></p><p><b>  <div></b></p><p>  <img

56、 src="img/8.png"></p><p><b>  </div></b></p><p><b>  </center></b></p><p><b>  </body></b></p><p><

57、;b>  </html></b></p><p><b>  5:算法流程圖界面</b></p><p>  <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%></p>

58、<p><b>  <%</b></p><p>  String path = request.getContextPath();</p><p>  String basePath = request.getScheme() + "://"</p><p>  + request.getServerNa

59、me() + ":" + request.getServerPort()</p><p>  + path + "/";</p><p><b>  %></b></p><p>  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Trans

60、itional//EN"></p><p><b>  <html></b></p><p><b>  <head></b></p><p>  <title>最速下降法--計算流程圖</title></p><p><b>

61、;  </head></b></p><p><b>  <body></b></p><p><b>  <center></b></p><p>  <jsp:include page="index.jsp"></jsp:includ

62、e></p><p><b>  <div></b></p><p>  <img src="img/3.png"></p><p><b>  </div></b></p><p><b>  </center>&

63、lt;/b></p><p><b>  </body></b></p><p><b>  </html></b></p><p><b>  6:實例界面</b></p><p>  <%@ page language="jav

64、a" import="java.util.*" pageEncoding="utf-8"%></p><p>  <%@taglib uri="/struts-tags" prefix="s" %></p><p><b>  <%</b></p&g

65、t;<p>  String path = request.getContextPath();</p><p>  String basePath = request.getScheme() + "://"</p><p>  + request.getServerName() + ":" + request.getServerPort

66、()</p><p>  + path + "/";</p><p><b>  %></b></p><p>  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"></p><p>&l

67、t;b>  <html></b></p><p><b>  <head></b></p><p>  <title>最速下降法--實例</title></p><p><b>  </head></b></p><p>

68、<b>  <body></b></p><p><b>  <center></b></p><p>  <jsp:include page="index.jsp"></jsp:include></p><p>  <img src="i

69、mg/9.png" width="200px" height="200px"><br></p><p>  初始值:x={1.5,7.5,-6.0}<br></p><p>  <s:form action="emp" method="get"></p&

70、gt;<p>  <!--<s:textfield label="精度" name="eps"/>--></p><p>  <!--<s:select label="精度" list="{'0.0000000001','0.000000001','0.0

71、0000001','0.0000001','0.000001','0.00001'}" name="eps"></s:select>--></p><p>  <s:select label="精度" list="#{'0.0000000001':

72、9;0.0000000001','0.000000001':'0.000000001','0.00000001':'0.00000001','0.0000001':'0.0000001','0.000001':'0.000001','0.00001':'0.00001'}

73、" name="eps"></s:select></p><p>  <s:submit value="計算"/></p><p><b>  </s:form></b></p><p>  <s:if test="#request.an

74、swer not in {null}"></p><p><b>  結(jié)果為:<br></b></p><p>  <s:iterator value="#request.answer" var="ans"></p><p>  ${ans}<br>&l

75、t;/p><p>  </s:iterator></p><p><b>  </s:if></b></p><p><b>  </center></b></p><p><b>  </body></b></p>&

76、lt;p><b>  </html></b></p><p>  理學(xué)院課程設(shè)計評分表 </p><p>  課程名稱: </p><p>  教師簽名: </p><p>  日 期: &l

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論