[問題] 關於對變數微分的寫法

看板Fortran作者 (筆記本之五六不能亡)時間9年前 (2015/04/13 21:05), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串1/1
大家好 打給賀! 我想寫一條通式,讓fortran可以自動對變數微分 變數[x]=x1,x2,...,xn [y]=y1,y2,...,yn 我大概的想法是這樣: __ do i=1,n do j=1,n do k=1,n if (i/=j .and. i/=k .and. j<k) then [x(j)-x(i)][x(j)-x(k)]+[y(j)-y(i)][y(j)-y(k)] ceta(i,j,k)=acos(----------------------------------------------) sqrt{[x(j)-x(i)]^2+[y(j)-y(i)]^2}*... sqrt{[x(j)-x(k)]^2+[y(j)-y(k)]^2} else ceta(i,j,k)=(0) end if end do end do end do dcetax=diff(ceta,x(i)) !將ceta對x(i)微分 dcetay=diff(ceta,y(i)) !將ceta對y(i)微分 __ 註1:ceta(i,j,k)我用分數表示,希望能好看懂 註2:x(i) y(i)的數值我都有,希望可以直接得出數字 但是不知道如何正確的寫成程式 還請各位前輩指教 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.155.140 ※ 文章網址: https://www.ptt.cc/bbs/Fortran/M.1428930326.A.386.html

04/13 21:09, , 1F
我有想過 DERIV(F,KORDER,X,BGSTEP,TOL) 這語法,
04/13 21:09, 1F

04/13 21:10, , 2F
但我的電腦資料庫好像沒有這個函式@@
04/13 21:10, 2F

04/19 15:23, , 3F
關於DERIV請搜尋IMSL library
04/19 15:23, 3F
文章代碼(AID): #1LAxyME6 (Fortran)