| 查看: 3596 | 回復(fù): 12 | |||
cs24451鐵蟲 (初入文壇)
|
[求助]
matlab使用自定義函數(shù)文件擬合出現(xiàn)錯誤 已有1人參與
|
|
代碼如下,x,y是想要擬合的曲線對應(yīng)的x,y值;L1,L2是想要擬合的參數(shù); 下面就是一系列的矩陣計算,通過x求得y 使用ft=fittype('c(x,,L1,L2)'); 出現(xiàn)錯誤: 錯誤使用 fittype/testCustomModelEvaluation (line 12) Expression c(x,L1,L2) is not a valid MATLAB expression, has non-scalar coefficients, or cannot be evaluated: Error in fittype expression ==> c(x,L1,L2) ??? 索引超出矩陣維度。 出錯 fittype>iCreateFittype (line 371) testCustomModelEvaluation( obj ); 出錯 fittype (line 328) obj = iCreateFittype( obj, varargin{:} ); 原因: 錯誤使用 fittype/evaluate (line 102) Error in fittype expression ==> c(x,L1,L2) ??? 索引超出矩陣維度。 怎么解決這個問題?還有其他擬合辦法嗎?求助好心的壇友~~~~~~~~~~~~~~~~~~~ ![]() ![]() function [ y ] = c(x,L1,L2) %UNTITLED2 此處顯示有關(guān)此函數(shù)的摘要 % 此處顯示詳細(xì)說明 m=20; % number of section n1 = 2.8924; %AlAs n2 = 3.3702; %GaAS na=1; ns=n2; ra=(na-n2)/(na+n2); r=(n2-n1)/(n2+n1); ta=sqrt(1-ra^2); t=sqrt(1-r^2); y=zeros(1,2500); ab1=0; ab2=0; for kl=1:2500 beta1 = 2*pi*n1/x(kl)-1i*ab1/2; beta2 = 2*pi*n2/x(kl)-1i*ab2/2; T11_a = exp(1i*beta2*L2)/ta; T12_a = ra*exp(-1i*beta2*L2)/ta; T21_a = ra*exp(1i*beta2*L2)/ta; T22_a = exp(-1i*beta2*L2)/ta; T=[T11_a,T12_a;T21_a,T22_a]; for k=1:m-1 T11_n2 = exp(1i*beta1*L1)/t; T12_n2 = r*exp(-1i*beta1*L1)/t; T21_n2 = r*exp(1i*beta1*L1)/t; T22_n2 = exp(-1i*beta1*L1)/t; T_n2=[T11_n2,T12_n2;T21_n2,T22_n2]; T=T*T_n2; T11_n1 = exp(1i*beta2*L2)/t; T12_n1 = -r*exp(-1i*beta2*L2)/t; T21_n1 = -r*exp(1i*beta2*L2)/t; T22_n1 = exp(-1i*beta2*L2)/t; T_n1=[T11_n1,T12_n1;T21_n1,T22_n1]; T=T*T_n1; end T11_n2 = exp(1i*beta1*L1)/t; T12_n2 = r*exp(-1i*beta1*L1)/t; T21_n2 = r*exp(1i*beta1*L1)/t; T22_n2 = exp(-1i*beta1*L1)/t; T_n2=[T11_n2,T12_n2;T21_n2,T22_n2]; T=T*T_n2; T_12=[1/t,-r/t;-r/t,1/t]; % from n1 to n2, just cross the interface T = T*T_12; T11_c = exp(1i*beta2*2*L2); T12_c = 0; T21_c = 0; T22_c = exp(-1i*beta2*2*L2); T_c = [T11_c,T12_c;T21_c,T22_c]; % n2 cavity T = T*T_c; for k=(1:m) T11_n2 = exp(1i*beta1*L1)/t; T12_n2 = r*exp(-1i*beta1*L1)/t; T21_n2 = r*exp(1i*beta1*L1)/t; T22_n2 = exp(-1i*beta1*L1)/t; T_n2=[T11_n2,T12_n2;T21_n2,T22_n2]; T=T*T_n2; T11_n1 = exp(1i*beta2*L2)/t; T12_n1 = -r*exp(-1i*beta2*L2)/t; T21_n1 = -r*exp(1i*beta2*L2)/t; T22_n1 = exp(-1i*beta2*L2)/t; T_n1=[T11_n1,T12_n1;T21_n1,T22_n1]; T=T*T_n1; end T11_n2 = exp(1i*beta1*L1)/t; T12_n2 = r*exp(-1i*beta1*L1)/t; T21_n2 = r*exp(1i*beta1*L1)/t; T22_n2 = exp(-1i*beta1*L1)/t; T_n2=[T11_n2,T12_n2;T21_n2,T22_n2]; T=T*T_n2; T_12=[1/t,-r/t;-r/t,1/t]; T = T*T_12; T11_c = exp(1i*beta2*9*L2); T12_c = 0; T21_c = 0; T22_c = exp(-1i*beta2*9*L2); T_c = [T11_c,T12_c;T21_c,T22_c]; % n2 cavity T = T*T_c; T11_n2 = exp(1i*beta1*L1)/t; T12_n2 = r*exp(-1i*beta1*L1)/t; T21_n2 = r*exp(1i*beta1*L1)/t; T22_n2 = exp(-1i*beta1*L1)/t; T_n2=[T11_n2,T12_n2;T21_n2,T22_n2]; T=T*T_n2; rs1=(n1-ns)/(ns+n1); ts1=sqrt(1-rs1^2); T11_s = 1/ts1; % n1 to substrate T12_s = rs1/ts1; T21_s = rs1/ts1; T22_s = 1/ts1; T_s = [T11_s,T12_s;T21_s,T22_s]; T=T*T_s; y(kl) = (abs(T(2,1)/T(1,1)))^2; end end ![]() ![]() |
學(xué)習(xí)方法 |
專家顧問 (正式寫手)
![]() |
專家經(jīng)驗(yàn): +52 |

鐵蟲 (初入文壇)
專家顧問 (正式寫手)
![]() |
專家經(jīng)驗(yàn): +52 |

鐵蟲 (初入文壇)
|
我把想x,y L1 L2的值都寫在excel里面了 多謝!!! |
專家顧問 (正式寫手)
![]() |
專家經(jīng)驗(yàn): +52 |

鐵蟲 (初入文壇)
專家顧問 (正式寫手)
![]() |
專家經(jīng)驗(yàn): +52 |

鐵蟲 (初入文壇)
鐵蟲 (初入文壇)
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 工科材料085601 279求調(diào)劑 +7 | 困于星晨 2026-03-17 | 9/450 |
|
|---|---|---|---|---|
|
[考研] 281求調(diào)劑(0805) +14 | 煙汐憶海 2026-03-16 | 25/1250 |
|
|
[考研] 286分人工智能專業(yè)請求調(diào)劑愿意跨考! +3 | lemonzzn 2026-03-17 | 4/200 |
|
|
[考研] 085410人工智能專碩317求調(diào)劑(0854都可以) +4 | xbxudjdn 2026-03-18 | 4/200 |
|
|
[考研] 304求調(diào)劑 +5 | 曼殊2266 2026-03-18 | 5/250 |
|
|
[考研] 一志愿北京化工大學(xué)0703化學(xué)318分,有科研經(jīng)歷,求調(diào)劑 +3 | 一瓶苯甲酸 2026-03-14 | 3/150 |
|
|
[考研] 一志愿中海洋材料工程專碩330分求調(diào)劑 +7 | 小材化本科 2026-03-18 | 7/350 |
|
|
[考研] 一志愿985,本科211,0817化學(xué)工程與技術(shù)319求調(diào)劑 +10 | Liwangman 2026-03-15 | 10/500 |
|
|
[考研] 354求調(diào)劑 +4 | Tyoumou 2026-03-18 | 7/350 |
|
|
[考研] 一志愿武理材料305分求調(diào)劑 +5 | 想上岸的鯉魚 2026-03-18 | 6/300 |
|
|
[考研] 297求調(diào)劑 +8 | 戲精丹丹丹 2026-03-17 | 8/400 |
|
|
[考研] 312求調(diào)劑 +8 | 陌宸希 2026-03-16 | 9/450 |
|
|
[考研] 0703化學(xué)336分求調(diào)劑 +6 | zbzihdhd 2026-03-15 | 7/350 |
|
|
[考研] 268求調(diào)劑 +8 | 一定有學(xué)上- 2026-03-14 | 9/450 |
|
|
[考研] 考研化學(xué)學(xué)碩調(diào)劑,一志愿985 +4 | 張vvvv 2026-03-15 | 6/300 |
|
|
[考研] 302求調(diào)劑 +4 | 小賈同學(xué)123 2026-03-15 | 8/400 |
|
|
[考研] 一志愿,福州大學(xué)材料專碩339分求調(diào)劑 +3 | 木子momo青爭 2026-03-15 | 3/150 |
|
|
[考研] 0703 物理化學(xué)調(diào)劑 +3 | 我可以上岸的對?/a> 2026-03-13 | 5/250 |
|
|
[考研] 327求調(diào)劑 +6 | 拾光任染 2026-03-15 | 11/550 |
|
|
[考研] 26考研一志愿中國石油大學(xué)(華東)305分求調(diào)劑 +3 | 嘉年新程 2026-03-15 | 3/150 |
|