2011-08-01 6 views
1

テキストファイルに書き込まれた表形式の値(2列)から関数を構築する必要があります。MATLABでの値の管理

  1. 変数

    x = Xp(1:18304,1); 
    y = Xp(1:18304,2); 
    
  2. の各列は、曲線を作るストア

    Xp = importdata('Xp.dat','\t',1); 
    
  3. データファイルを読み込むには、コマンドimportdataはを使用します。それは、次のされていることを確認するためのプロセス両方の変数に当てはめる

    ft = fittype('linearinterp'); 
    datos.f_Xp = fit(x,y,ft); 
    
  4. 私は、コードをプロファイリングしていたときに

しかし、私は私のボトルネックは、カーブフィッティングに関連する組み込み関数fittype.fittypefittype.evaluatecfit.fevalppvalcfit.subsref があることを見出しました。だから私は自分のコードを改善するために集計値をどのように管理すべきか自問しています。

+0

より関連性の機能を見つけるまあ、いつも比較的に言えば、「ボトルネック」が存在します。 'フィット(。) 'のあなたの実際のタイミングは何ですか?そして、あなたは実際にそうすべきだとどれくらい良くなっていますか?ありがとう – eat

答えて

1

18304データポイントを曲線に当てようとしています。また、linearinterpを使用しています...これは、ルーチンが区分的に実行されていることを意味します。コードをより速くしたい場合は、より少ないデータポイントを使用します。

それとも、試してみてください。

ft = fittype('poly1'); 

わからないが、あなたのケースで仕事ができる私は、データへのアクセス

0

は、「エバール」関数とすることができる持っていないので、それはあなたが必要な答えになりますです、 いくつかの簡単な例:

A = '1+4'; eval(A) 
ans = 
    5 
P = 'pwd'; eval(P) 
ans = 
/home/myname 

と少し進んだ!

for n = 1:12 
     eval(['M',int2str(n),' = magic(n)']) 
end 

また、それが何をするのか姉妹名 "fevalの" 推測を、持っています! [V、D] = fevalを( 'EIG'、A) [V、D] = EIG(A)ここで

function plotf(fun,x) 
y = feval(fun,x); 
plot(x,y) 

とあなたは正しいです!すべては、

チェックアウトhere同等であり、

関連する問題