|
- 2008/09/02 01:30最小分散ポートフォリオ(効率的な境界 Efficient Frontier)
- %----------------- MATLABソース -----------------%%最小分散ポ
ートフォリオ(効率的な境界 Efficient Frontier)%期待収 益率ret = [ 0.05 0.02 0.01]%共分散行列cov = [ 110 35 -11; 35 64 -7; -11 -7 6]nport = 20;%ポートフォリオ制約を伴う平均 分散有効フロンティアを出力[prisk, pret, pw] = frontcon(re t,cov, nport)plot(prisk,pret);grid on;print('-dpng','-r100','port. png');%----------------- MATLABソース --------... [続きを読む]
|
- 2008/07/20 20:45F確率密度関数とF累積分布関数
- %----------------- MATLABソース -----------------%mx = 3;dx = 0.1;r
= 2;c =1;x = 0:dx:mx;v1 = [ 1 6 12 ];v2 = [ 1 6 12 ];indx=1;for i=1:l ength(v1) for j=1:length(v2) f(indx,:) = fpdf(x,v1(i),v 2(j)); % F確率密度関数 F(indx,:) = fcdf(x,v1(i),v2( j)); % F累積分布関数 leg{indx} = ['v1=' num2str(v1(i)) ',v2=' num2str(v2(j))]; indx = indx+1; endendsubplot(r,c,1 );plot(x,f);title('F確率... [続きを読む]
|
- 2008/07/16 17:42スチューデントT分布とスチューデントT累積分布
- t分布の密度関数は標準正規分布と非常によく似た形
をし、自由度vを無限大にした極限をとると標準正規 分布が得られる。%----------------- MATLABソース ----------- ------%mx = 4;dx = 0.1;r = 2;c = 1;x = -mx:dx:mx;v = [ 1 2 3 4 8 16 32 ];for i=1:length(v) %スチューデントT分布に対する確率 密度関数 f(i,:) = tpdf(x,v(i)); %スチューデントT累積 分布関数 F(i,:) = tcdf(x,v(i)); leg{i} = num2str(v(i)); endsubplot(r,c,1)... [続きを読む]
|
- 2008/05/02 17:45MATLABからSQLite3にアクセス方法
- SQLiteはMySQLやPostgreSQLと同じDBMS(データベース管理ソフト)であるが、サーバとしてではなくアプリケーションに組み込まれて利用される軽量データベースである。 一般的なRDBMSに比べて大規模な仕事には不向きだが、中小規模ならば速度も遜色はない。また、APIは単純で単にライブラリを呼び出すだけであり、データの保存には単一のファイルしか使用しない事も特徴である。(Wikipediaより引用) MatlabからもODBC(JDBC?)に経... [続きを読む]
|
- 2008/04/26 01:11グラフのX軸・Y軸目盛り位置・ラベルを任意に設定する
- グラフの目盛りは自動的につけられますが,目盛り位置と目盛りラベルとを手動で設定したいときはaxesのsetコマンドで、XTick、YTick(目盛り位置を指定するベクトル)とXTickLabel、YTickLabel(目盛ラベル)を使うと便利だ。%----------------- MATLABのソース -----------------%% 2008/04/01〜2008/04/24のドル・円レートデータusdjpy = {% 日付 始値 高値 安値 終値'2008/... [続きを読む]
|
|
|
- 2008/04/16 12:23Google App Engine SDK
- 最近の話題沸騰中Google App Engine SDKを使って見た。第一印象は、ウェブアプリケーションの基本であるwebappフレームワーク、テンプレート、DataStoreのアクセスなどがよく用意された。 質問箱に参考... [続きを読む]
|
- 2007/11/30 13:26MATLABのFigureのX軸Y軸をX→Y、Y→X逆にする方法
- MATLABで書いたFigure(グラフなど)のX軸Y軸をX→Y、Y→Xと逆にしたい場合があります。plot(x,y)のような関数なら、plot(y,x)に変更すれば、可能ですが、hist(ヒストグラム),imview(イメージビューワ内にイメージを表示)などには、適用できません(?)。この場合は、view(90,90)の関数をすると便利だと思います。%----------------- MATLABソース -----------------%y = randn(10000,1);hist(y,60); %ヒストグラムtitle('ヒストグラ... [続きを読む]
|
- 2007/11/30 00:262つの色の違うボールのアニメーション
- %----------------- MATLABソース -----------------%for t=0:0.02:4*pi
; x=sin(t)*10; y=cos(t)*10; plot(t,x,'.b',t,y,'.k','MarkerS ize',30); xlim([0 2*pi]); ylim([-10 10]); grid on; % 描 画を強制更新 drawnowend%----------------- MATLABソース ----- ------------%... [続きを読む]
|
- 2007/11/29 23:32MATLABのLAPACE関数の利用方法
- L = LAPLACE(F) は、デフォルトの独立変数 t をもつス
カラシンボリックオブジェクトF のラプラス変換です 。%----------------- MATLABソース -----------------%syms t s a;f= { t^4 ; 1/sqrt(s) ; exp(-a*t) ; };N = length(f);for i=1:N L = laplace(f{i}); %ラプラス変換 disp(f{i}); disp('ラプ ラス変換後'); disp(L); disp('------------------------------- ---');end%----------------- MATLABソース -------------... [続きを読む]
|
- 2007/11/26 23:33MATLABのIFOURIER関数の利用方法
- f = IFOURIER(F)は、デフォルトの独立変数 w をスカラ
シンボル F の逆フーリエ変換です。%----------------- MATL ABソース -----------------%syms wF = { exp(-abs(w)) ; 2*exp (-abs(w))-1 ; };N = length(F);for i=1:N f = ifourier(F{i}) ; %逆フーリエ積分変換 disp(F{i}); disp('逆フーリ エ積分変換'); disp(simple(f)); disp('------------------- ---------------');end%----------------- MATLABソース ----... [続きを読む]
|
- 2007/11/25 13:10MATLABのFOURIER関数の利用方法
- F = FOURIER(f) は、デフォルトの独立変数 x をもつ
シンボリックスカラf のフーリエ変換です。デフォル トでは、w の関数を出力します。%----------------- MATLAB ソース -----------------%syms x v;f= {exp(-x^2) ;exp(-abs(x)) ;x*exp(-abs(x)) ;sin(x)*exp(-x^2) ;};N = length(f);for i=1:N F = fourier(f{i}); %フーリエ積分変換disp(f{i});disp('フ ーリエ積分変換後');disp(F);disp('-------------------------- --------');... [続きを読む]
|
- 2007/11/23 16:23MATLABのGPLOT関数の利用方法
- GPLOT関数は、隣接行列を使ってノード集合(ネットワーク図)をプロットします。%----------------- MATLABソース -----------------%r = 1;c = 2;A = [ %1 2 3 4 0 1 0 1; % 1 ノード1は、ノード2,3に隣接ため、1 1 0 1 0; % 2 ノード2は、ノード1,3に隣接ため、1 0 1 0 1; % 3 ノード3は、ノード2,4に隣接ため、1 1 0 1 0 % 4 ノード4は、ノード1,3に隣接ため、1 ];xy = [ 1 3; % ノード1の座標 2 1; % ノード2の... [続きを読む]
|
- 2007/11/22 13:34マンデルブロ集合とマンデルブロ図形
- マンデルブロ集合とは、ある複素数Cに対して,次のような漸化式を計算します.mが無限に大きくなっても |z(m)|^2 が発散しないような複素数Cの集合をマンデルブロ集合と呼びます。 Z(0) = 0.0 Z(m+1) = Z(m)*Z(m) + C マンデルブロ図形とは複素平面上に描かれるフラクタル図形(自己相似図形)の一種で、元IBMの研究者であったBenoit Mandelbrotによって発見されました。自己相似図形とは自分自身の定義を自分自身で行っている、... [続きを読む]
|
- 2007/11/21 13:03MATLABのFFT関数の利用方法
- 高速フーリエ変換(Fast Fourier Transform, FFT)とは、離散フーリエ変換 (Discrete Fourier Transform, DFT) を計算機上で高速に計算するアルゴリズムです。 ここで、FFTを使って、太陽黒点の周期の算出する例題を紹介します。 太陽の黒点活動について、1700 年〜1987 年までの間、1 年毎に観測したWolfer 数データが、sunspot.dat にあります。黒点の動きは、太陽黒点の活動は、約11年毎に最大になる周期をもっていることが... [続きを読む]
|
- 2007/11/20 12:55candle関数(キャンドルスティックチャート)の利用方法
- candle関数(キャンドルスティックチャート)の利用方法を紹介します。 candle関数は有価証券(株、為替のレートなど)の価格の高値 HIGH、安値 LOW、終値 CLOSE、始値 OPEN のデータが与えられた時に、キャンドルスティックチャートをプロットします。%----------------- MATLABのソース -----------------%% 2007/11/01〜2007/11/19のドル・円レートデータusdjpy = {% 日付 始値 高値 安値 終値'2007/11/01' 115.... [続きを読む]
|
- 2007/11/19 14:50MATLAB内からのPostgreSQLクエリーの直接実行
- Database Toolboxの利用により、データベースに保管されている情報をMATLABのデータ解析および可視化ツールを用いて分析することが可能です。MATLAB環境内の操作において、SQLを使って、データベースからの読み込みやデータの書き出し、データベースクエリーに対するシンプルまたは高度な条件設定を行うことができます。ここで、MATLAB環境内からPostgreSQLサーバへのアクセス方法を紹介します。%----------------- MATLABのソース... [続きを読む]
|
- 2007/11/11 17:05レスラーアトラクタ
- レスラーモデルに参考 レスラーモデルとは、チュービンゲン大学のレスラー(O.E.Rossler)によって提案されたストレンジアトラクタで、非線形項のみを含む非線形微分方程式である。%----------------- MATLABのソース -----------------%%----------------- main_rossler.m -----------------%function main_rosslerr = 2;c = 2;[t,xyz] = ode45('rossler',[0,500],[4;0;0]);x = xyz(:,1); xmin = min(x); xmax = max(x);y = xyz... [続きを読む]
|
- 2007/11/10 15:30ローレンツ・アトラクタ
- ローレンツモデルに参考 ローレンツモデルとは、気象学者エドワード・ローレンツ (Edward N. Lorenz)は1963年に "Deterministic nonperiodic flow"というカオスの研究上重要な位置を占めるにことになる論文を発表した。 このモデルは、上下に温度差のある流体の運動差によって、対流から乱流へ転移してく運動を記述するモデルである。一般的な対流の運動方程式、連続の方程式、熱伝導の方程式を用いて導かれる。%-----... [続きを読む]
|
- 2007/11/09 12:50ブラウン運動
- ブラウン運動とは、1827年、ロバート・ブラウンが、花粉が水の浸透圧で破裂し水中に流失し浮遊した微粒子を顕微鏡下で観察中に発見した現象。液体中のような媒質中(媒質としては気体、固体もあり得る)に浮遊する微粒子が、不規則(ランダム)に運動する現象である。長い間原因が不明のままであったが、1905年、アインシュタインにより、熱運動する媒質の分子の不規則な衝突によって引き起こされる現象であるとして説明する理論が... [続きを読む]
|
- 2007/11/09 08:56ランダムウォーク
- ランダムウォークとは、「次に現れるものの確率」が不規則(ランダム)に決定される運動のこと。一見すると、「不規則で落ち着きのない動き」をしているように見えても、全体的に見ると実は「連続である」ことを指す。%----------------- MATLABソース -----------------%function main()N = 128*16;cx = 0.1; cy = 0.1;sx = 0; sy = 0;x(1) = 0; y(1) = 0;for i=2:N [dx dy] = randwalk; sx = sx + cx * dx; sy = sy +... [続きを読む]
|
- 2007/11/08 16:52正規確率密度と正規累積分布
- %----------------- MATLABソース -----------------%mx = 3;dx = 0.1;r
= 2;c = 1;x = -mx:dx:mx;mu = 0; %平均値sigma = 1; %標準偏差% 正規確率密度関数f = normpdf(x,mu,sigma);%正規累積分布 関数F = normcdf(x,mu,sigma);subplot(r,c,1);plot(x,f);title(' 標準正規確率密度');grid on;subplot(r,c,2);plot(x,F);title ('標準正規累積分布');grid on;print('-dpng','-r100','normpdf. png');%----------------- MATLABソース ----... [続きを読む]
|
- 2007/11/08 00:55ボロノイ図(Voronoi diagram)
- 平面上に配置された点群において,各点の勢力圏に応じて平面を分割した図が,二次元のボロノイ図(Voronoi diagram)です。%---------------- MATLABソース ----------------%N = 256;S = 4;x = rand(N,1)*S; % 点xy = rand(N,1)*S; % 点y%Voronoi線図voronoi(x,y);print('-dpng','voronoi.png');%---------------- MATLABソース ----------------%MATLABによるボロノイ図... [続きを読む]
|
- 2007/11/06 13:28peaks 関数のアニメーション
- %--------Matlabのソース--------%PEAKSは、ガウス分布の変
換とスケーリングによって得られる2変数関数Z = peaks; surf(Z);%ムービーフレームのメモリの初期化M = moviein (60);axis manualset(gca,'nextplot','replacechildren');for j = 1:60 surf(sin(2*pi*j/20)*Z,Z) %ムービーフレームの取り出し M(:,j) = getframe;end% ムービーからAVIムービーを作成mo vie2avi(M,'peaks.avi')%--------Matlabのソース--------アニメ ーション... [続きを読む]
|
- 2007/06/02 17:57よく利用されるMATLABのシンボリック
- SYM シンボリックな数値、変数、オブジェクトの作成例: sym('x') sym(1/3,'r') SYMS シンボリックオブジェクト作成のショートカット例: syms x y zVPA 可変精度の演算例:vpa(pi,128)DOUBLE 倍精度に変換例: double(x)CHAR キャラクタ配列(文字列)の作成例: char(x)FINDSYM シンボリック式、または、行列内の変数の検出例: syms x y z, z=x^2+y^2, findsym(z) は、x,yを出力するFINVERSE 逆関数finverse(f)SYMSUM ... [続きを読む]
|