2012-11-11 50 views
3
for ii = 1:2:2*de.nP    
     G=[one, aux3(:,ii), aux3(:,ii) - aux2(:,ii),aux3(:,ii+1) - aux2(:,ii+1)]; 

     try 
     betasPu(:,(ii+1)/2) =G\yM; 
     catch ME 
     betasPu(:,(ii+1)/2)=[Inf,Inf,Inf,Inf]; 
     end 
end 

我使用上面的代碼嘗試捕獲G中使用G的實例;情況嚴重/單調。Matlab try/catch

我已經使用上面的代碼但現在捕捉似乎並不是儘管被產生幾個嚴重空調/奇異矩陣觸發。

回答

4

我覺得條件不好的計算不會導致錯誤,只會發出警告?據我所知的警告沒有被卡住..

然而有一些的規避:

  • 您可以檢查lastwarn檢測警告。
  • 可以修改警告產生錯誤的解釋here