トップページ⇒tech
981コメント327KB

MATLABプログラミング 質問箱 その2

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2006/11/10(金) 11:28:22
MATLAB 日本語版
http://www.cybernet.co.jp/matlab/
MATLAB 本家
http://www.mathworks.com/

Yahoo MATLAB
http://dir.yahoo.co.jp/Science/Mathematics/Software/MATLAB/
MATLAB入門
http://feedback.mech.fukui-u.ac.jp/matlab/matlab0.htm
MATLAB チュートリアル
http://www-isys.eei.metro-u.ac.jp/~sho/pub/ttmatlab/Index.html
0175デフォルトの名無しさん2007/07/23(月) 14:57:43
>>174
そんなこと一言も言ってないのになんで勝手に決めるんだ?
でお前は質問に答えられもしないし
どう聞けばより答が得られやすいかを教えてあげるわけでもないんだろ?
0176初心者2007/07/23(月) 21:36:26
MATLABのツールボックスを使わずに、
TSPの10都市問題をエネルギー関数を用いて解かせるプログラムを組みたいのですが、
全くわかりません。。
参考にできるサイトなどありましたらお教えいただけませんでしょうか。
0177デフォルトの名無しさん2007/07/23(月) 21:41:48
pythonならmapなかった?
01781772007/07/23(月) 21:44:44
ちなみに
python matlab compatible
で検索すると幸せになれるかも
0179デフォルトの名無しさん2007/07/24(火) 00:09:10
>>176
検索したら巡回セールスマン問題の解法アルゴリズムは
たくさん出てくると思うんだけど。

それをプログラムにしていく過程でまた具体的な質問が出てきたら
ここで質問したらいいと思うが、その質問だと全部ゼロから書いてくれ
って言ってるようなもんだぞ。

コツとしてはMATLABは忘れてpseudo codeでいいから求める手順を
まずしっかり書き出してみることだな。

>>177,178
matlabとmapで検索しまくって出てきた答?
0180デフォルトの名無しさん2007/07/25(水) 02:09:20
>>176
traveling salesman annealingで検索したらそのまんまなのが見つかるな。
さすがに宿題でこのコード出すわけにはいかないだろうけど(笑)。
0181初心者2007/07/25(水) 22:41:54
デフォルトの名無しさん、丁寧なご回答ありがとうございます。
参考にさせていただきます。
0182デフォルトの名無しさん2007/08/03(金) 18:20:14
3つの列ベクトルx(i),y(j),z(k)をそれぞれx軸、y軸、z軸に設定してグラフを書きたいです。数式によって高さを与えるz平面のプロットは可能ですが実験で得られたデータを高さに与えて平面を書き出すことは可能ですか?
0183デフォルトの名無しさん2007/08/03(金) 22:12:48
高さがあるのに平面とは…
0184デフォルトの名無しさん2007/08/05(日) 04:35:53
mov2aviでPowerPointで再生できる動画を作成したいのですが、何を指定すればよいのでしょうか?
0185デフォルトの名無しさん2007/08/06(月) 12:46:32
>>184
help mov2avi
何が出来て何が出来なかったのか言ってくれないと判らない
0186デフォルトの名無しさん2007/08/10(金) 21:15:59
画像に、フィルターをかけるとき、フィルタのパラメータを調整したものを複数生成して
それらを一覧で表示したいのですが、
cat関数で横一列に繋げると、枚数が増えたとき表示のバランスが取れません。
何枚生成するかは、そのときそのときで違う場合で、よい方法はないでしょうか?
0187デフォルトの名無しさん2007/08/10(金) 22:16:01
3次元のグラフというか立体図面を書きたい。
x,yの平面に高さzで、高さを面で現したような。
n行3列の行列があって(例えばdat)、行毎に[x,y,z]のデータの組が順不同に入っている。
例えば dat = [ 1 2 0.5; 1 3 0.6; 3 8 1.5; 1 1.5 0.6];
plot3(dat(:,1),dat(:,2),dat(:,3),'.') では上手く行かないし、surfaceを使えば良いのか、検討が付かない。
何か手掛かりだけでも、誰か教えてください。
0188デフォルトの名無しさん2007/08/11(土) 02:38:41
>>186
で、そのフィルターが1個のときと1000個のときで
具体的にどう表示して欲しいんだ?

>>187
よく分からんけどsurfは? とりあえずhelp graph3dしろ。
01891862007/08/11(土) 18:33:27
>>188
えっと、ある程度表示がよくなればまったく問題ないのですが
画像の右上に、パラメーターの数値を書き込んで
それらの画像をおおよそウィンドウ内部に
おおよそ正方形くらいになるように並べられらばと思っています。
0190デフォルトの名無しさん2007/08/12(日) 00:37:31
1個のときの表示、2個のときの表示、・・・と全部具体的にイメージできてる?
それが出きてればそれをプログラムに書けばいいだけ。文章から推測するに、
君はやろうとしていることを具体的に細分化して理解しようとしていない。
「おおまかにこんな感じ」ではプログラムにならない。
コンピュータはそんなにかしこくないんです。
0191デフォルトの名無しさん2007/08/24(金) 10:49:42
すごい初歩的なことなのですが少数点以下をもつ数の累乗根を出すような関数やコマンドは何でしょうか?

0192デフォルトの名無しさん2007/08/24(金) 11:14:08
ヘルプは当然見たんだろうけど、どうやって調べた?
0193デフォルトの名無しさん2007/08/25(土) 03:05:55
>>192
helpでコマンド一覧みたいなのを見たのですが整数の累乗根を出すものしか見つけられなかったので質問させてもらいました
0194デフォルトの名無しさん2007/08/25(土) 04:42:51
>>193
うちでは整数のみのそのコマンドが見つからないです。
0195デフォルトの名無しさん2007/09/12(水) 18:12:42
等間隔で行を抽出するにはどうすればいいですか?
例えば、1行目、11行目、21行目…という風にです。
0196デフォルトの名無しさん2007/09/13(木) 01:12:14
1:10:end
これじゃダメ?
0197デフォルトの名無しさん2007/09/13(木) 18:58:31
matlabで箱ヒゲ図を描きたいです。
ヒゲは、errorbarを使えば何とかなるのですが、
箱を描く方法が思いつきません。
どなたか、ご教授してください。

http://www.sci.kagoshima-u.ac.jp/~itls/Japanese/chapter3/topic/baseball/box.html
こういう図が描きたいのです。
0198デフォルトの名無しさん2007/09/13(木) 19:20:26
株価のローソク足に似てるなーと思って「MATLAB ローソク足」でググったら一番上にそれらしきものがでてきたよ
Financial Time Series Toolboxがいるらしい

そこでCandle Plotを描くだけならだれかが自作のmファイルを後悔してるかも知れないと思って
「MATLAB Candle Plot」でググったらCandle.mを無性公開しているサイトを発見したぜ
0199デフォルトの名無しさん2007/09/13(木) 19:20:30
>>195
fid = fopen(filename);
while 1
line = fgetl(fid);
 if length(line)==0
break;
end
// 任意の操作をここに。
for ii = 1:10 // 10行を読み飛ばす。
fgetl(fid);
end
end
fclose(fid);

でOK?
02001972007/09/13(木) 19:57:27
>>198
多謝。それです。
「ローソク足」というものがあるのですね。知りませんでした。
見つけていただいたコードを参考にしたいと思います。

以下、チラ裏。
plot( [x1 x2 x2 x1 x1], [uh uh lh lh uh] ));
で、箱が描けるとは。
matlab暦5ヶ月目で、新鮮な発見。
検索スキルとmatlab力を磨いて出直してきます。
02011952007/09/15(土) 16:14:20
>>196>>199
できました、ありがとうございます。
0202デフォルトの名無しさん2007/09/23(日) 16:27:08
MATLABには行列内部の最小の値を取る関数はあるけど
最小の値のある場所のインデックスを返す関数ってないよね
0203デフォルトの名無しさん2007/09/23(日) 16:40:45
同じ関数
0204デフォルトの名無しさん2007/09/23(日) 19:07:22
help その関数
で、わかりますよ^^
0205デフォルトの名無しさん2007/09/25(火) 11:19:11
ygridの位置を指定するにはどうすればいいのでしょうか?
0206デフォルトの名無しさん2007/09/26(水) 00:01:34
もっと詳しく書いて欲しいところだが、
set(gca, 'YTick', [ ... ]);
とかでどう?
0207デフォルトの名無しさん2007/09/26(水) 16:05:17
matlabのグラフで,プロットした波形にマウスを当てると,
その時点での縦軸と横軸の値が出ますが,
それを,コマンドプロンプトでやりたいんですが,
関数かなにかありますか?

検索しても見つからなかったので,
やはり自分でプログラムを組むべきなのでしょうか?
0208デフォルトの名無しさん2007/09/27(木) 15:34:32
>>207
つ[gnuplot]
02092072007/09/27(木) 23:44:56
>>208
ご教授ありがとうございます.

gnuplotは,さわりだけしか使ったことないんで,
どうなるか分かりませんが,やってみます.
02102072007/09/27(木) 23:47:12
ということは,
そういったことができるmatlabコマンドはないんですね・・・
0211デフォルトの名無しさん2007/09/28(金) 14:52:23
画像処理でアフィン変換できる関数が見当たらないのですが気のせい?
結構基礎的な関数の気がするんだけど
0212デフォルトの名無しさん2007/09/28(金) 22:45:39
そのくらい自分でやれ、ってことじゃないの?
0213デフォルトの名無しさん2007/09/29(土) 11:00:49
まとめサイトはありませんか?
0214デフォルトの名無しさん2007/09/30(日) 15:08:48
v=1*50000 vector & A=50000*50000 matrix

v*AをやろうとするとOut of memoryになっていまいます。

メモリーを追加しないで、効率よく計算するにはどうしたらいいですか?
よいBuilt-in関数とかないっすか?
0215デフォルトの名無しさん2007/09/30(日) 19:10:11
>>202
ヘルプ見なさい
0216デフォルトの名無しさん2007/09/30(日) 22:31:40
>203,204,215
helpみました
吊ってきます…
0217デフォルトの名無しさん2007/10/01(月) 17:27:37
Axes上に複数のLineオブジェクトを作成しました。
このLineをマウス操作で移動したり、リサイズしたりしたいと思ってます…。

Axes上にLineを引くときは、function axes1_ButtonDownFcn( )でいけました。
しかし、function axes1_ButtonDownFcn( )の中にselectmoverisizeを書くと、
Axes自体が移動・リサイズされてしまいました。

そもそも、Lineオブジェクトをselectmoveresizeで操作するのは無理なんでしょうか?
0218デフォルトの名無しさん2007/10/02(火) 15:25:07
3次元プロットで、(例えばsurfなどで)値がaxisで指定した範囲外にあってもプロットされてしまうのですが、
axisで指定した範囲内のみプロットするようにするにはどうしたらよいのでしょうか?
0219デフォルトの名無しさん2007/10/02(火) 16:06:06
関数を定義する場合必ず別ファイルにしないといけないのですか?
同一ファイル内で定義することはできないものでしょうか?
0220デフォルトの名無しさん2007/10/02(火) 18:45:41
>>218
aってのを3次元の行列だとして
surf(a(xmin:xmax,ymin:ymax,zmin:zmax))
じゃだめ?
意味取り違えてたらごめんね。

>>219
http://pc11.2ch.net/test/read.cgi/tech/1163125702/82-
同じスレなので出来れば読んでね。
0221デフォルトの名無しさん2007/10/04(木) 03:19:13
matlabってリーもとデスクトップじゃつかえないのだね
0222デフォルトの名無しさん2007/10/11(木) 14:00:14
bata版のNAG ToolBox for MATLAB
無料評価版

http://www.nag-j.co.jp/ToolBox.htm
0223デフォルトの名無しさん2007/10/11(木) 14:23:25
pythonで大部分の数値計算できるけどmatlabってやっぱりまだ需要あるの?
0224デフォルトの名無しさん2007/10/11(木) 16:29:25
>>223
C で python のできることは全部できるけど python って需要あんの?
0225デフォルトの名無しさん2007/10/12(金) 00:19:45
俺紙とエンピツで全部やってるけどコンピュータって需要(ry
0226デフォルトの名無しさん2007/10/12(金) 05:57:48
さすがにMATLABのスレでそりゃないだろ。
手作業でやったら一生かかっても終わらん計算してるだろうに。
0227デフォルトの名無しさん2007/10/23(火) 14:25:52
質問なのですが、下記のプログラムをsimulinkでブロック図にて表すにはどうすればよろしいでしょうか?

clear allsyms z n p T
syms z n p T
h=0.1;
A=[exp(-h) int(exp(-T),0,h);-0.5 1];
b=[0;0.5];
c=[exp(-p) int(exp(-T),0,p)];
G=c/(z*eye(2)-A)*b;
R=z/(z-1);
Y=R*G;
y=iztrans(Y);
t=1;
for m=0:9,
v(1,m+1)=subs(y,n,m);
for l=0:9,
w(1,l+t)=subs(v(1,m+1),p,l*1e-2);
end
t=t+10;
end
figure
plot(w)
grid on
0228デフォルトの名無しさん2007/10/23(火) 18:32:33
それは質問じゃなく変換依頼
0229デフォルトの名無しさん2007/10/25(木) 03:43:18
タブ区切りのデータなのですが、一行目が見出しになっています。
一行目をのぞいて簡単に読み込む方法はないでしょうか?
0230デフォルトの名無しさん2007/10/25(木) 07:53:38
fgetl
0231デフォルトの名無しさん2007/10/25(木) 16:19:50
たぶん激しく初心者な質問でスマソなんですが、サイズがL,M,Nな3次元変数を3次元プロットする方法知りませんか?
0232デフォルトの名無しさん2007/10/25(木) 22:13:34
強度イメージから一定範囲の強度値だけを抽出する
方法を教えてください
0233デフォルトの名無しさん2007/10/25(木) 22:39:50
田中真紀子のポロリ画像ありますか?
0234デフォルトの名無しさん2007/10/26(金) 09:37:43
オナニーをすると身長が伸びないというのは本当ですか?
02352312007/10/28(日) 16:40:35
>>231
自己解決しますた
0236デフォルトの名無しさん2007/11/01(木) 13:39:31
質問させてください。
specgramの逆の操作がしたいです。
X=specgram(x,128,8000);
で、
スペクトログラムXから音xを合成したいのですが、どうしたらいいですか??
0237デフォルトの名無しさん2007/11/02(金) 00:57:30
synthesizeとかいう命令があったような気がする。
matlabじゃなくてoctaveの命令だったかも。
0238デフォルトの名無しさん2007/11/02(金) 06:26:24
Core2duoに変えたんだけど、64BITに変えたら
計算すごく速くなる?
ベンチとかないかなぁ
0239デフォルトの名無しさん2007/11/02(金) 19:57:08
入力したサウンドデータを,何の音なのか
(例えば,パトカーのサイレン,人の叫び声等)
分類するソフトを個人的に作成しています.

とりあえずmatlabでスペクトル表示を行い,
様々なサウンドデータのスペクトルを見たのですが,
分類の条件を何にしようか考えています.

「パトカーのサイレンは○○Hzで特に高いピーク値を得られる」
などの特徴を分類する際の条件にできるかなと思ったのですが,

この他に,音を分類する上で有効な条件となるようなものを
ご存知の方がいましたらご教授お願いします.

0240デフォルトの名無しさん2007/11/02(金) 20:58:50
スレ違い
0241デフォルトの名無しさん2007/11/02(金) 21:45:16
自分の目でいういろ比較して確かめなさい
0242デフォルトの名無しさん2007/11/04(日) 12:40:22
はじめまして、matlab初心者です。
早速ですが質問させて下さい。

任意形状の2次元物体をメッシュ切りした上に、
コンターグラフの様な物を描かせたいのですが、
どなたか出来る方法をご存じないでしょうか?

宜しくお願いします。
0243デフォルトの名無しさん2007/11/04(日) 19:30:34
matlabのメインウインドに打ち込むだけでsimulinkの開始ボタンを押したのと同じ処理になるコマンドってありますか?
0244デフォルトの名無しさん2007/11/05(月) 20:40:09
>>243
SIM
0245デフォルトの名無しさん2007/11/07(水) 10:02:25
例えば4x4のマトリックスを2x2にして、各要素は元々のヨウ素を加算してくれる関数はないですか?
ループとsum関数を使えばすぐに出来るんですがね
0246デフォルトの名無しさん2007/11/07(水) 10:05:37
>>211
Image Processing Tool Boxだったかにあるよ。座標変換してからinterp2に流し込めばすぐにできるけどね。
0247デフォルトの名無しさん2007/11/07(水) 22:42:27
>>245
じゃぁ、ループとsum関数を使えば?
0248デフォルトの名無しさん2007/11/08(木) 01:47:43
>>247
matlab ではできるだけループを使わないのが重要
速度がダンチ
0249デフォルトの名無しさん2007/11/08(木) 05:18:32
書き方が曖昧でわからんがエスパーの俺ならこうかな。Aのサイズは偶数として。
B=A(1:2:end,1:2,end)+A(2:2:end,1:2:end)+A(1:2:end,2:2:end)+A(2:2:end,2:2:end);
0250デフォルトの名無しさん2007/11/08(木) 05:19:06
:と,一カ所ミスった。
0251デフォルトの名無しさん2007/11/09(金) 15:59:58
??? エラー: ==> anfisedit
SCRIPT anfisを関数として実行してみてください.

これを解決するにはどうすればよい のでしょうか?
一週間前ぐらいにMATLAB始めた者です。
0252デフォルトの名無しさん2007/11/09(金) 20:08:08
>>251
SCRIPT anfisを関数として実行してみてください.
0253デフォルトの名無しさん2007/11/11(日) 22:32:56
MATLABで式をニュートンラプソン法でとくにはどうしたらいいでしょうか?
分からなさすぎてノイローゼになりそうです。
0254デフォルトの名無しさん2007/11/12(月) 02:23:50
まぁスレ違いだわな
0255デフォルトの名無しさん2007/11/12(月) 07:39:22
GUI上でxの変域をかえたいんですけどどうすれば良いですか?
0256デフォルトの名無しさん2007/11/13(火) 21:23:48
GUI上で数値を入力させて、
set(h, 'xlim', [x1 x2]);
じゃダメなの?
0257デフォルトの名無しさん2007/11/16(金) 21:18:38
FORTRANで書いたものを、
MATLABに変換したいのですが、手書き以外で
何かいい方法あったら教えてください。
0258デフォルトの名無しさん2007/11/16(金) 22:16:21
fftでパルスの周波数帯域を表示させたいんですが、
周波数軸をどうやって設定すればよいかわからないのです。
パルスはガウシアンパルスでUWBなので5ギガ位まで表示させるつもり何ですが、うまくいかないのです。
どなたかお願いします。
0259デフォルトの名無しさん2007/11/17(土) 02:50:17
>>257
グーグルの使い方くらい知らないと
今後いろいろ苦労すると思うから覚えた方がいいよ。
0260デフォルトの名無しさん2007/11/17(土) 18:16:24
ファイルの読み込みで指定した列だけ読む方法ってありましたっけ。

A = load("hoge.txt");
B = A(:,4);
みたいに、全部読んで目的列以外は捨てればいいんですが、
ファイルのサイズが大きいと、
全部読むのに時間がかかるので、効率化したいのです。
0261182007/11/17(土) 23:13:55
matlabでシミュレーションを5回もするとメモリが500Mから1Gくらいまで増えてしまうんですが、
これってなぜなんでしょうか?
0262デフォルトの名無しさん2007/11/18(日) 00:14:17
>>260
dlmreadのマニュアル読むと良いよ。
0263デフォルトの名無しさん2007/11/18(日) 13:49:03
対数データのフィッティングの方法を教えてください。
通常のデータであれば、最小二乗法ですが、対数データの場合はどのようにやればよいのでしょうか?
0264デフォルトの名無しさん2007/11/18(日) 16:04:56
対数の底で冪をとって最小二乗法
0265beta-infinite2007/11/20(火) 13:16:10
「MATLABの極」というブログを書いています。良ければ、ご参考に
http://beta-infinite.blogspot.com/
0266デフォルトの名無しさん2007/11/25(日) 19:51:53
著作権違反ですよw
0267デフォルトの名無しさん2007/11/26(月) 18:14:01
MATLABを使ってBP法のニューラルネットワーク作らないといけないんですが
誰か請負いませんか?
価格は応相談、MATLAB使えてBP法分かる人ならそんなに難しい作業じゃないと思います
仕様とかその辺は請け負ってくれる人がいたらメールなりなんなりで連絡します
0268デフォルトの名無しさん2007/11/26(月) 18:32:59
今、手一杯だからなー。
月80万だったら考えるけどね。
それかNNツールキット買えばいいんじゃないの?
0269デフォルトの名無しさん2007/11/26(月) 18:46:20
ていうか自分で作れって感じ
層やニューロン数を完全に一般化した物でなければ速攻で作れるでしょ
もちろんfor文抜きでな
02702672007/11/26(月) 19:12:50
料金は
3時間未満:一律12000円
3時間以上:時給4000円
7時間以上:一律28000円
このあたりでよろ

おれ自身じゃ作れないので金で解決する
0271デフォルトの名無しさん2007/11/26(月) 19:19:22
安すぎ
0272デフォルトの名無しさん2007/11/26(月) 19:29:20
委託研究でMATLABでソフト作ったときは、30万もらったな
0273デフォルトの名無しさん2007/11/26(月) 20:31:27
作成物の複雑さとか教えてもらえずに
7時間以上28000円は安いな。
02742672007/11/27(火) 00:00:36
ここでは話せないが詳しい仕様を聞いてくれるやつはレスくれ
秘密厳守の上その時点で断ってくれてもOKだから
■ このスレッドは過去ログ倉庫に格納されています