Re: [問題] 關於微分的寫法
※ 引述《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
03/20 21:18, 1F
討論串 (同標題文章)
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章