假設折疊中的折疊函數是f(x,y),要折疊[1,2,3],初始值是0。
左折疊的精神如下:
f(f(f(0,1),2),3)
遞迴呼叫是發生在左邊的參數。
參數求值是從左到右的。因為一定要先遞迴到最深才能取得參數值,所以不能使用在無窮串列上。
2017年7月27日 星期四
2017年7月24日 星期一
windows上的gvim如何設定預設字型
gvim上設定預設字型向來是一件麻煩事,尤其在windows上。
問題是參數不知道應該長怎樣,隨系統的不同而不同。
windows上,開啟gvim之前系統會執行"_vimrc"的內容。
首先用視窗界面("編輯"→"設定字型")來設定字型。
接下來利用":set guifont?"指令來觀察參數應該長怎樣。
然後在_vimrc中最後一行輸入 「 set guifont="剛剛看到的參數" 」就可以了。
我的gvim 8.0,windows 7,最後結果是這樣
set guifont=Source_Code_Pro_Medium:h12:cANSI:qDRAFT
問題是參數不知道應該長怎樣,隨系統的不同而不同。
windows上,開啟gvim之前系統會執行"_vimrc"的內容。
首先用視窗界面("編輯"→"設定字型")來設定字型。
接下來利用":set guifont?"指令來觀察參數應該長怎樣。
然後在_vimrc中最後一行輸入 「 set guifont="剛剛看到的參數" 」就可以了。
我的gvim 8.0,windows 7,最後結果是這樣
set guifont=Source_Code_Pro_Medium:h12:cANSI:qDRAFT
2017年4月7日 星期五
2017年1月19日 星期四
帶參數積分的微分
ddy∫u(y)v(y)f(x,y)dx
這式子要如何計算?
設∫uvf(x,y)dx=I(u,v,y)dI=∂I∂udu+∂I∂vdv+∂I∂ydy=f(u(y),y)u′(y)dy−f(v(y),y)v′(y)dy+(∫uvf′y(x,y)dx)dy∴
證明要比這個麻煩,這樣只是方便記憶。
這式子要如何計算?
設∫uvf(x,y)dx=I(u,v,y)dI=∂I∂udu+∂I∂vdv+∂I∂ydy=f(u(y),y)u′(y)dy−f(v(y),y)v′(y)dy+(∫uvf′y(x,y)dx)dy∴
證明要比這個麻煩,這樣只是方便記憶。
2017年1月14日 星期六
泰勒多項式的兩種餘項
假設f(x)在[a, b]連續,在(a, b) n+1階可微,帶餘項的泰勒公式是這樣的:
f(b) = \sum_{k=1}^n f^{(k)}(a)/(k!) (b-a)^k+f^{(n+1)}(\xi)/((n+1)!)(b-a)^{n+1}
f^{(n+1)}(\xi)/((n+1)!)(b-a)^{n+1}是最常見的餘項,叫做拉格朗日餘項。但是還有令一種餘項叫做積分餘項(還有第三種,暫時不提),這可以直接用分部積分推導,或是從拉格朗日餘項用積分中值公式推導。後一種方法簡單一點。
多加上一個條件,就是f(x)在(a, b)連續可微,就成立積分餘項
(1/n!)\int_a^b f^{(n+1)}(x)(b-x)^n \, dx
注意到(b-x)在 x 屬於[a,b]時不變號,又發現
(1/n!)\int_a^b (b-x)^n \, dx= (b-a)^{n+1}/(n+1)!,
之後套用積分中值公式就知道兩種餘項相等了。
f(b) = \sum_{k=1}^n f^{(k)}(a)/(k!) (b-a)^k+f^{(n+1)}(\xi)/((n+1)!)(b-a)^{n+1}
f^{(n+1)}(\xi)/((n+1)!)(b-a)^{n+1}是最常見的餘項,叫做拉格朗日餘項。但是還有令一種餘項叫做積分餘項(還有第三種,暫時不提),這可以直接用分部積分推導,或是從拉格朗日餘項用積分中值公式推導。後一種方法簡單一點。
多加上一個條件,就是f(x)在(a, b)連續可微,就成立積分餘項
(1/n!)\int_a^b f^{(n+1)}(x)(b-x)^n \, dx
注意到(b-x)在 x 屬於[a,b]時不變號,又發現
(1/n!)\int_a^b (b-x)^n \, dx= (b-a)^{n+1}/(n+1)!,
之後套用積分中值公式就知道兩種餘項相等了。
訂閱:
文章 (Atom)