ODR#
- class scipy.odr.ODR(data, model, beta0=None, delta0=None, ifixb=None, ifixx=None, job=None, iprint=None, errfile=None, rptfile=None, ndigit=None, taufac=None, sstol=None, partol=None, maxit=None, stpb=None, stpd=None, sclb=None, scld=None, work=None, iwork=None, overwrite=False)[原始碼]#
ODR 類別收集所有資訊並協調主要擬合常式的執行。
ODR 類別實例的成員與初始化常式的引數名稱相同。
- 參數:
- dataData 類別實例
Data 類別的實例
- modelModel 類別實例
Model 類別的實例
- 其他參數:
- beta0rank-1 的 array_like
rank-1 的初始參數值序列。如果模型提供 “estimate” 函數來估計這些值,則為選用參數。
- delta0rank-1 的浮點數 array_like,選用參數
一個(雙精度)浮點數陣列,用於保存輸入變數中誤差的初始值。必須與 data.x 的形狀相同
- ifixbrank-1 的整數 array_like,選用參數
與 beta0 長度相同的整數序列,用於決定哪些參數被固定。值為 0 會固定參數,值 > 0 會使參數自由。
- ifixx與 data.x 形狀相同的整數 array_like,選用參數
一個與 data.x 形狀相同的整數陣列,用於決定哪些輸入觀測值被視為固定。可以使用長度為 m(輸入觀測值的維度)的序列來固定所有觀測值的某些維度。值為 0 會固定觀測值,值 > 0 會使其自由。
- jobint,選用參數
一個整數,告訴 ODRPACK 要執行的任務。如果您絕對必須在此處設定值,請參閱 ODRPACK 使用者指南第 31 頁。使用方法 set_job 進行後初始化以獲得更易讀的介面。
- iprintint,選用參數
一個整數,告訴 ODRPACK 要列印的內容。如果您絕對必須在此處設定值,請參閱 ODRPACK 使用者指南第 33-34 頁。使用方法 set_iprint 進行後初始化以獲得更易讀的介面。
- errfilestr,選用參數
一個字串,其中包含要將 ODRPACK 錯誤列印到的檔案名稱。如果檔案已存在,則會擲出錯誤。overwrite 引數可用於防止這種情況。請勿自行開啟此檔案!
- rptfilestr,選用參數
一個字串,其中包含要將 ODRPACK 摘要列印到的檔案名稱。如果檔案已存在,則會擲出錯誤。overwrite 引數可用於防止這種情況。請勿自行開啟此檔案!
- ndigitint,選用參數
一個整數,指定函數計算中可靠位數的數量。
- taufacfloat,選用參數
一個浮點數,指定初始信任區域。預設值為 1。初始信任區域等於 taufac 乘以第一個計算出的高斯-牛頓步的長度。taufac 必須小於 1。
- sstolfloat,選用參數
一個浮點數,指定基於平方和相對變化的收斂容差。預設值為 eps**(1/2),其中 eps 是最小值,使得 1 + eps > 1 用於機器上的雙精度計算。sstol 必須小於 1。
- partolfloat,選用參數
一個浮點數,指定基於估計參數相對變化的收斂容差。對於顯式模型,預設值為 eps**(2/3),對於隱式模型,預設值為
eps**(1/3)
。partol 必須小於 1。- maxitint,選用參數
一個整數,指定要執行的最大迭代次數。對於首次執行,maxit 是執行的總迭代次數,預設為 50。對於重新啟動,maxit 是要執行的額外迭代次數,預設為 10。
- stpbarray_like,選用參數
序列 (
len(stpb) == len(beta0)
),表示用於計算 wrt 參數的有限差分導數的相對步長。- stpd選用參數
陣列 (
stpd.shape == data.x.shape
或stpd.shape == (m,)
),表示用於計算 wrt 輸入變數誤差的有限差分導數的相對步長。如果 stpd 是長度為 m(輸入變數的維度)的 rank-1 陣列,則這些值會廣播到所有觀測值。- sclbarray_like,選用參數
序列 (
len(stpb) == len(beta0)
),表示參數的縮放因子。這些縮放因子的目的是將所有參數縮放到接近於 1。如果未指定此引數,通常會計算出適當的縮放因子。如果自動程序出錯,請自行指定。- scldarray_like,選用參數
陣列 (scld.shape == data.x.shape 或 scld.shape == (m,)),表示輸入變數中誤差的縮放因子。同樣,如果您不提供這些因子,它們會自動計算。如果 scld.shape == (m,),則縮放因子會廣播到所有觀測值。
- workndarray,選用參數
陣列,用於保存 ODRPACK 的雙精度值工作資料。重新啟動時,採用 self.output.work 的值。
- iworkndarray,選用參數
陣列,用於保存 ODRPACK 的整數值工作資料。重新啟動時,採用 self.output.iwork 的值。
- overwritebool,選用參數
如果為 True,則會覆寫由 errfile 和 rptfile 定義的輸出檔案。預設值為 False。
- 屬性:
- dataData
此擬合的資料
- modelModel
擬合中使用的模型
- outputOutput
Output 類別的實例,包含從 ODR.run() 或 ODR.restart() 呼叫返回的所有資料
方法
restart
([iter])使用更多迭代次數 iter 重新啟動執行。
run
()使用給定的所有資訊並使用
full_output=1
執行擬合常式。set_iprint
([init, so_init, iter, so_iter, ...])設定用於列印計算報告的 iprint 參數。
set_job
([fit_type, deriv, var_calc, ...])以期望可理解的方式設定 "job" 參數。