求導(dǎo)數(shù)有兩種,一種是表達式求導(dǎo),一種是數(shù)值求導(dǎo)。
創(chuàng)新互聯(lián)主營西秀網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件定制開發(fā),西秀h5成都小程序開發(fā)搭建,西秀網(wǎng)站營銷推廣歡迎西秀等地區(qū)企業(yè)咨詢
表達式求導(dǎo):需要對表達式進行詞法分析,然后用常見的求導(dǎo)公式進行演算,求得導(dǎo)函數(shù)。在這方面,數(shù)學(xué)軟件matrix,maple做得非常好。如果自己用C進行編程,不建議。
數(shù)值求導(dǎo):利用導(dǎo)數(shù)的定義,用差分計算,當(dāng)自變量趨于0時,前后兩次差分收斂到需要精度,計算結(jié)束。這種方法可以求得某一點的導(dǎo)數(shù)。
例如:
求一階導(dǎo)數(shù),原函數(shù) y = f(x), 程序中是float f(float x){ ...}
dx=0.01;????//設(shè)?dx?初值
do{
dd1=(f(x0)?-?f(x0+dx))/dx;????//計算導(dǎo)數(shù)dd1
dx?=?0.5?*?dx;??//?減小步長
dd2=(f(x0)?-?f(x0+dx))/dx;????//計算導(dǎo)數(shù)dd2
}while?(fabs(dd1-dd2)?=?1e-06)?//判斷新舊導(dǎo)數(shù)值之差是否滿足精度,滿足則得結(jié)果,不滿足則返回
例如:
y=2+t^3
x=sint
則有:
y'=(dy/dt)/(dx/dt)
=3t^2/cost.
y''=(dy'/dt)/(dx/dt)
=(3t^2/cost)'/cost.
后面的步驟就不寫了。
1、要有函數(shù),設(shè)置成double類型的參數(shù)和返回值。
2、根據(jù)導(dǎo)數(shù)的定義求出導(dǎo)數(shù),參數(shù)差值要達到精度極限,這是最關(guān)鍵的一步。根據(jù)導(dǎo)數(shù)的定義求出導(dǎo)數(shù),參數(shù)差值要達到精度極限,這是最關(guān)鍵的一步。
用差分計算,當(dāng)自變量趨于0時,前后兩次差分收斂到需要精度,計算結(jié)束。
例如,一階導(dǎo)數(shù),寫一個函數(shù)y=f(x):
floatf(floatx){...}
設(shè)dx初值
計算dy
dy=f(x0)-f(x0+dx);
導(dǎo)數(shù)初值
dd1=dy/dx;
Lab:;
dx=0.5*dx;//減小步長
dy=f(x0)-f(x0+dx);
dd2=dy/dx;//導(dǎo)數(shù)新值
判斷新舊導(dǎo)數(shù)值之差是否滿足精度,滿足則得結(jié)果,不滿足則返回
if(fabs(dd1-dd2)1e-06){得結(jié)果dd2...}
else{dd1=dd2;gotoLab;};
這是一個非常難而且非常復(fù)雜的問題,難點在于要把所有的導(dǎo)數(shù)類型都要考慮到,還要考慮到對哪些變量求導(dǎo),還要解析復(fù)雜函數(shù)的表達式。 不是像手動求導(dǎo)那么簡單的,建議你打消這個念頭吧。
x'=1/y'
x"=(-y"*x')/(y')^2=-y"/(y')^3
將原函數(shù)進行二次求導(dǎo)。一般的,函數(shù)y=f(x)的導(dǎo)數(shù)y‘=f’(x)仍然是x的函數(shù),則y’=f’(x)的導(dǎo)數(shù)叫做函數(shù)y=f(x)的二階導(dǎo)數(shù)。在圖形上,它主要表現(xiàn)函數(shù)的凹凸性。
如果一個函數(shù)f(x)在某個區(qū)間I上有f''(x)(即二階導(dǎo)數(shù))0恒成立,那么對于區(qū)間I上的任意x,y,總有:f(x)+f(y)≥2f[(x+y)/2],如果總有f''(x)0成立,那么上式的不等號反向。
幾何的直觀解釋:如果一個函數(shù)f(x)在某個區(qū)間I上有f''(x)(即二階導(dǎo)數(shù))0恒成立,那么在區(qū)間I上f(x)的圖象上的任意兩點連出的一條線段,這兩點之間的函數(shù)圖象都在該線段的下方,反之在該線段的上方。
擴展資料:
結(jié)合一階、二階導(dǎo)數(shù)可以求函數(shù)的極值。當(dāng)一階導(dǎo)數(shù)等于0,而二階導(dǎo)數(shù)大于0時,為極小值點。當(dāng)一階導(dǎo)數(shù)等于0,而二階導(dǎo)數(shù)小于0時,為極大值點;當(dāng)一階導(dǎo)數(shù)和二階導(dǎo)數(shù)都等于0時,為駐點。
設(shè)f(x)在[a,b]上連續(xù),在(a,b)內(nèi)具有一階和二階導(dǎo)數(shù),那么,
(1)若在(a,b)內(nèi)f''(x)0,則f(x)在[a,b]上的圖形是凹的;
(2)若在(a,b)內(nèi)f’‘(x)0,則f(x)在[a,b]上的圖形是凸的。
網(wǎng)站名稱:用c語言函數(shù)編寫二階導(dǎo)數(shù) 用c語言函數(shù)編寫二階導(dǎo)數(shù)公式
網(wǎng)站路徑:http://aaarwkj.com/article4/hhheie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、網(wǎng)站策劃、靜態(tài)網(wǎng)站、服務(wù)器托管、用戶體驗、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)