Re: [問題] 關於微分的寫法

看板Fortran作者 (講不聽)時間15年前 (2009/03/19 00:52), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串3/5 (看更多)
※ 引述《latinboy (暱稱)》之銘言: : ※ 引述《comicgirl (一定要沒事!!!拜託!!!)》之銘言: : : 請問各位強者 : : 怎麼將y',y''寫成fortran的語法 : : 直接寫y',y''似乎不被接受 : : 之前有看過寫成y1.y2,不過我也run不出來Q____________Q : : 我是fortran的初學者,學的好辛苦 : : 希望大家不吝指教,謝謝^^ : 你這樣寫當然不行...... : 有些語言能夠直接作微分 可惜 fortran沒有.... : 自己寫也很簡單 就是自己微阿 : 隨便舉個例子 假設 y = x^3 + x^2 - x + 3 : fortran寫法 y = x**3 + x**2 - x + 3 : dy = 3*(x**2) + 2*x - 1 : d2y = 6*x + 2 隨手寫的,不知道有沒有錯 program main external y call diff_1st(y,1,f) print *,f end subroutine diff_1st(fun,x,f) external fun dx = 1 k=1 f_old = (fun(x+dx)-fun(x-dx))/(2*dx) dx = dx/2 do while(k) f_new = (fun(x+dx)-fun(x-dx))/(2*dx) dx = dx/2 if(f_new.eq.f_old) k = 0 f_old = f_new end do f = f_new return end function y(x) y = x**3 + x**2 - x + 3 return end -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.182.191

03/20 21:18, , 1F
沒人理我QQ
03/20 21:18, 1F
文章代碼(AID): #19mIQr8t (Fortran)
文章代碼(AID): #19mIQr8t (Fortran)