① 數值微分的舉例說明
根據函數在一些離散點的函數值,推算它在某點的導數或某高階導數的近似值。通常用差商代替微商,或用一能近似代替該函數的較簡單的函數(如多項式、樣條函數)的相應導數作為所求導數的近似值。例如,對帶余項的插值公式ƒ(x)=I(x)+R(x)取k階導數就得到帶余項的數值微分公
這里插值函數I(x)的k階導數I(k)(x)即為所求k階導數 ƒ(k)(x)的近似值,而插值函數余項R(x)的k階導數R(k)(x)則給出此近似值的截斷誤差。
通常利用多項式插值進行數值微分。設函數ƒ(x)在n+1個等距點xv=α+vh(v=0,1,…,n)上的值ƒv=ƒ(xv)為已知,則通過低次插值可導出一些最基本和常用的數值微分公式,例如,兩點公式 三點公式等等。此外,利用具有n+1個等距節點的拉格朗日插值公式,還可導出在節點xj(i=0,1,…,n)上的較為一般的數值微分公式
這里Ai,v、Bi,v僅與 n、i、v有關,而相應的截斷誤差可分別表成式中因此,當節點的個數n+1固定時,間距h愈小, 則截斷誤差也愈小。但是這時系數絕對值之和隨h的變小而劇增,所以函數值ƒv的舍入誤差對近似導數的影響也隨h的變小而劇增。因此,h並非愈小愈好,而是要適中,這是數值微分不同於某些插值之處。如果函數ƒ(x)有很好的可微性,即存在絕對值不太大的較高階導數,則寧取間距稍大而個數稍多的節點。當ƒ(x)在節點分布的整個區間上的可微性不太好時,利用樣條插值進行數值微分比利用多項式插值更適宜,只是計算量要大得多。
如果數據ƒv帶有不容忽視的隨機誤差,而其對應的自變數分布甚密,就應該用曲線擬合代替上述函數插值,然後用擬合曲線的導數作為函數ƒ(x)的導數的近似值。這樣求得的導數叫做磨光的導數。
② 微分公式是什麼
基本微分公式是dy=f'(x)dx。
微分公式的推導設函數y = f(x)在某區間內有定義,x0及x0+△x在這區間內,若函數的增量Δy = f(x0 +Δx)−f(x0)可表示為Δy = AΔx + o(Δx),其中A是不依賴於△x的常數,o(Δx)是△x的高階無窮小,則稱函數y = f(x)在點x0是可微的。
學習微積分的方法有:
1、課前預習
一個老生常談的話題,也是提到學習方法必將的一個,話雖老,雖舊,但仍然是不得不提。雖然大家都明白該這樣做,但是真正能夠做到課前預習的能有幾人,課前預習可以使我們提前了解將要學習的知識,不至於到課上手足無措,加深我們聽課時的理解,從而能夠很快的吸收新知識。
2、記筆記
這里主要指的是課堂筆記,因為每節課的時間有限,所以老師將的東西一般都是精華部分,因此很有必要把它們記錄下來,一來可以加深我們的理解,好記性不如爛筆頭嗎,二來可以方便我們以後復習查看。
3、認真聽講
對於大學生,特別是大一新生,學習方式與上高中時有了很大不同,上課時老師基本都用PPT來講課,但是,千萬不要認為上課不用聽,下課把老師的PPT拷貝下來學習就可以了,老師上課會滲透很多PPT上沒有的內容,如果錯過了,在PPT上是找不到的。
4、課後復習
同預習一樣,是個老生常談的話題,但也是行之有效的方法,課堂的幾十分鍾不足以使我們學習和消化所學知識,需要我們在課下進行大量的練習與鞏固,才能真正掌握所學知識。
③ 數值微分法用通俗的語言解釋一下它的實現方法
就是求導了!
作差,求商,求極限唄
參考:http://ke..com/view/295773.htm
數學分析裡面有的
根據函數在一些離散點的函數值,推算它在某點的導數或高階導數的近似值的方法。通常用差商代替微商,或者用一個能夠近似代替該函數的較簡單的可微函數(如多項式或樣條函數等)的相應導數作為能求導數的近似值。例如一些常用的數值微分公式(如兩點公式、三點公式等)就是在等距步長情形下用插值多項式的導數作為近似值的。此外,還可以採用待定系數法建立各階導數的數值微分公式,並且用外推技術來提高所求近似值的精確度。當函數可微性不太好時,利用樣條插值進行數值微分要比多項式插值更適宜。如果離散點上的數據有不容忽視的隨機誤差,應該用曲線擬合代替函數插值,然後用擬合曲線的導數作為所求導數的近似值,這種做法可以起到減少隨機誤差的作用。數值微分公式還是微分方程數值解法的重要依據。
另請參考:http://www.fjtu.com.cn/fjnu/courseware/0329/course/_source/web/lesson/char7/j1.htm
下面是一個包含了簡單差商的C代碼,是我寫給別人的,椐說有點錯誤,但我因為這不影響你理解差商
0 0.5 1.0 1.5 2.0 2.5
0.84147 0.85770 0.89924 0.94898 0.98777 0.99955
要求:
1.根據上表,計算差商表,並列印出來.
2.列印出Newton插值多項式.
3.計算f(1.673),用3次Newton插值多項式.
4.計算f(0.618),用5次Newton插值多項式.
根據以上要求,請用C或C++編寫個程序.
#include<math.h>
#include<stdio.h>
#include<stdlib.h>
typedef struct data
{float x;
float y;}Data;
void scan(Data* a)
{float x,y;
scanf("%f%f",&x,&y);
(*a).x=x;
(*a).y=y;}
float f(Data *d,int s,int t)
{
if(t==s+1) return (d[t].y-d[s].y)/(d[t].x-d[s].x);
else return (f(d,s+1,t)-f(d,s,t-1))/(d[t].x-d[s].x);
}
float Newton(Data *d,float x)
{float t=1.0;
float y=d[0].y;
float yt=0;
int j,n;
while(1){
printf("\ninput n:");
scanf("%d",&n);
if(n<20) break;
else system("cls");}
for(j=1;j<=n;j++){
t=(x-d[j-1].x)*t;
yt=f(d,0,j)*t;
printf("%f\n",f(d,0,j));
y=y+yt;}
return y;
}
main(){
Data d[20];
Data *p=d;
int i,n;
float y,x;
printf("\ninput arrey ( <20 ):" );
scanf("%d",&n);
for(i=0;i<n;i++) scan(p+i);
printf("\ninput x:");
scanf("%f",&x);
y=Newton(d,x);
printf("\nji guowei:%f",y);
}
④ 一般來講,解決問題有經驗方法、理論方法、經驗對比法等,請問數值計算的方法
摘要 您好,很高興為您解答:
⑤ 怎麼算啊
具體計算的時候,如果選擇的是帶肋類型,公稱直徑超過了25毫米,計算錨固長度的時候,需要乘以1.15,這個1.15就是指它的修正系數...
如果抗震等級達到了一級或者二級,這個系數就按照1.15來計算。 如果達到了三級,系數就按照1.05。 如果達到了四級,系數就會按照...
如果是縱向的起到了受力的作用,鋼筋的尾部需要採取彎鉤措施,同時它的錨固長度可以按照基本值的60%來計算。
(1x6%+1x8%)/(2x44%+2x6%+1x42%+1x8%)x100% =(0.06+0.08)/(2x0.44+2x0.06+1x0.42+1x0.08)x100% =0.093x100% =9.3% ∴選D 答案正確,請【採納答案】,非常感謝。詳情>>
知乎,中文互聯網高質量的問答社區和創作者聚集的原創內容平台,於2011 年1月正式上線,以「讓人們更好地分享知識、經驗和見解,找到...
進行數字加減時,把復雜的數字轉換成容易加減的各位數位零的數字.如,465+654=(400+600)+(50+50)+15+4=1119, ...
計算方法又名數值分析,是為各種數學問題的數值解答研究提供最有效的演算法。計算方法主要內容包括函數逼近論、數值微分、數值積分、誤差分析等,常用方法有迭代法、差分法、插值法、有限元素法等,現代計算方法要求適應電子計算機的特點。計算方法又稱「數值分析」。是為各種數學問題的數值解答研究提供最有效的演算法。主要內...
⑥ 數值微分的一階導數和二階導數公式在具體計算時
答:本題是算是問對人了,
如果你要想深入分析,需要用到函數的泰勒展開。
1) 你說的兩種方法都可以用,但是後面的方法精度更高。
f''(x)=[f(x+h)-2f(x)+f(x-h)]/h^2 方法是等效與 f''(x)=[f'(x+h/2)-f'(x-h/2)]/h 是2階精度
2) 先求其一階導數值,然後再用一階的差分公式求出2階的導數,是1階精度。
就好比 f'(x)=[f(x+h)-f(x-h)]/2h 是2階精度,
f'(x)=[f(x+h)-f(x)]/h 是1階精度。
關鍵就是在泰勒展開方面
f(x+h)=f(x)+f'(x)*h+b*f''(x)*h^2+c*f'''(x)*h^3 b,c為泰勒展開的系數
f(x-h)=f(x)-f'(x)*h+b*f''(x)*h^2-c*f'''(x)*h^3
可以看出 如果用 [f(x+h)-f(x)]/h =f'(x)+b*f''(x)*h+c*f'''(x)*h^2 後面的是誤差項。
如果用 [f(x+h)-f(x=h)]/2h =f'(x) + c*f'''(x)*h^2 可以明顯看出第二種方法的誤差更小。
同理可以推導二階導數的精度問題。
望採納,如果有不明白的,可以進一步溝通
⑦ 求函數微分
使用diff命令
符號運算
diff函數用以演算一函數的微分項,相關的函數語法有下列4個:
diff(f) 傳回f對預設獨立變數的一次微分值
diff(f,'t') 傳回f對獨立變數t的一次微分值
diff(f,n) 傳回f對預設獨立變數的n次微分值
diff(f,'t',n) 傳回f對獨立變數t的n次微分值
也即matlab求導命令diff調用格式:
diff(函數) , 求的一階導數;
diff(函數, n) , 求的n階導數(n是具體整數);
diff(函數,變數名), 求對的偏導數;
diff(函數, 變數名,n) ,求對的n階偏導數;
數值微分函數也是用diff,因此這個函數是靠輸入的引數決定是以數值或是符號微分,如果引數為向量則執行數值微分,如果引數為符號表示式則執行符號微分。如果輸入一個長度為n的一維向量,則該函數將會返回長度為n-1的向量,向量的值是原向量相鄰元素的差,於是可以計算一階導數的有限差分近似。
先定義下列三個方程式,接著再演算其微分項:
>>S1 = '6*x^3-4*x^2+b*x-5';
>>S2 = 'sin(a)';
>>S3 = '(1 - t^3)/(1 + t^4)';
>>diff(S1)
ans=18*x^2-8*x+b
>>diff(S1,2)
ans= 36*x-8
>>diff(S1,'b')
ans= x
>>diff(S2)
ans=cos(a)
>>diff(S3)
ans=-3*t^2/(1+t^4)-4*(1-t^3)/(1+t^4)^2*t^3
>>simplify(diff(S3))
ans= t^2*(-3+t^4-4*t)/(1+t^4)^2