Octaveやmaximaなどの数学系のフリーソフトのスレ
maple18だとeq:=x^2+x+1 と表示される maple9でもeq:=x^2+x+1と表示された maximaのsolveって複素数解もつ連立方程式は解けない?
solve([x^2+y^2=1,(x-3)^2+(y-5)^2=1],[x,y])
試してみたんだけど{}だった。(x-3)^2+(y-5)^2=25にしたら実数解は出たんだけど Maple11の環境です。
以下の行列の展開式でxyzの項だけ取り出したいのですがcollectコマンドが機能しません。
何が原因なのでしょうか?
with(LinearAlgebra);
A := Matrix(3, 3, {(1, 1) = a11, (1, 2) = conjugate(a21), (1, 3) = conjugate(a31), (2, 1) = a21, (2, 2) = a22, (2, 3) = conjugate(a32), (3, 1) = a31, (3, 2) = a32, (3, 3) = a33});
B := Matrix(3, 3, {(1, 1) = b11, (1, 2) = conjugate(b21), (1, 3) = conjugate(b31), (2, 1) = b21, (2, 2) = b22, (2, 3) = conjugate(b32), (3, 1) = b31, (3, 2) = b32, (3, 3) = b33});
Q := Matrix(3, 3, {(1, 1) = q11, (1, 2) = conjugate(q21), (1, 3) = conjugate(q31), (2, 1) = q21, (2, 2) = q22, (2, 3) = conjugate(q32), (3, 1) = q31, (3, 2) = q32, (3, 3) = q33});
eq0 := Determinant(x*A+y*B+z*Q); eq1 := collect(eq0, x); eq2 := collect(eq1, y); eq3 := collect(eq2, z); Maple とか使わないから知らんけど
coeff を使うとか? octave触り始めたんですが、
mac版は3dのプロットがすごくカクカクなんですが
ほかもそうなんでしょうか?
4.0で劇的に変わったりします?まだmac版が無いっぽいですが。 octave 4.0 で2G以上のメモリを確保するにはどうすればいいですか? >>185
windowsを捨ててmacかLinuxを使う。 MaximaってIEのjavascriptからライブラリとして呼び出せませんか。 点(x1,y1),(x2,y2)を通る直線を求めたいときsolveをつかって何とかうまいこと求められないでしょうか。
p: [x=x1,y=y1]
q: [x=x2,y=y2]
l: solve([a*x+b*y+c=0,p,q][a,b,c])
のような感じでa,b,cが求められるとよいのですが。 p: [x=x1,y=y1];
q: [x=x2,y=y2];
line: a*x+b*y+c=0;
l1: line,p;
l2: line,q;
solve([l1,l2],[a,b,c]);
こうかな line: a*x+b*y+c=0;
get_line(p,q) := sublis(
append(
solve([sublis(p,line),sublis(q,line),c=1],[a,b,c]),
solve([sublis(p,line),sublis(q,line),a=1,c=0],[a,b,c]))[1],
line);
できた。 座標 (a′, b′)の点と座標 (c′, d′)の点を通る直線は
(d′ ? b′)(x ? a′) + (c′ ? a′)(y ? b′) = 0
wikiより octave でfopenするときって、ファイルはカレントディレクトリにあればいいんですか? maximaで円の連立方程式を解かせようとしたら、
以下のようになりました。
(%i68) solve([(x-2)^2+(y-2)^2=8,x^2+y^2=8],[x,y]);
(%o68) []
なぜ解が求まらないのでしょうか。 Windows7でMaximaをいれたところsin(x)の微分や式表示ですら
バグって応答なしになってしまいます
どうすればいいですか >>195
Maximaのバグらしいから悩むのはやめよう
ttp://sourceforge.net/p/maxima/bugs/2736/ maximaをバージョンアップした時によくバグが入っていることが多い。
使わさせてもらってる立場であるから言い難いけど、
どういう管理をしてるのかな?ってちょっと思う。 octave 4.0 windows版って2GB以上のデータ使えるようになった? 今のmathematicaは至れり尽くせり。高機能になるとバグも増えるのは分かるがそれでもmaximaよりは
ずっと少ない。mathematicaで連立方程式が解けないとか間違った解を出すなんてのはありえないよ maximaの結果が正しいかどうか検算って虚しいな Mathematicaも、使い込むと色々と出てくるわけよ。
去年はバグ報告の回数が2桁になったw Mathematicaは更新がはやい。10.3.1じゃとっくに解決してる
商用だから当たり前だが
いくらフリーだからって>>198レベルのを放置は管理する気ないだろ
フリーでも火狐やUbuntuはしょっちゅう更新するってのに mathematicaの話はここでしなくていいよ。
Expand[x*(x-1),x]とかEと大文字にしてしかもsift+returnが
うざいし、UIの外観を変えるためのプログラミングもうざい。
mathematicaはlispに似てると聞いたけどどうなんだろ?
texへの文書の変換もややこしくない?>mathematicaの人
maximaはlispを使って動いてますよね。emacsをmaximaのUIに
使うこともできるんでしょうね。 maximaで括弧が表示されなくなったのですが解決方法が分かりません
例えばX^2+2*X+1 の因数分解をさせると、
(x+1)^2ではなく、X+1^2と表示されてしまいます。 >>210-211
Windowsの5.36.1(SBCL)版のコマンドラインではちゃんと動くっぽい。
(%i1) display2d:false;
(%o1) false
(%i2) factor(X^2+2*X+1);
(%o2) (X+1)^2
実は表示だけの問題だったら(この例ならexpand()で元に戻るのなら)、
気にしないのも手だなw
>>210
現象の切り分けは出来てますか?
コマンドライン版Maxima起動直後でも再現するか?
それとも特定のGUIでのみ再現するのか? >>213
返信遅くなって申し訳ないです。
コマンドライン版では正しく表示されるようですが、
GUI版だと、アスキー形式または形式なしで出力しない限り表示できないらしく、
xml形式での表示ができない状態でした。
xmlに問題があるのでしょうか。 これですよね?
ttp://maxima.osdn.jp/maxima_39.html
>>214
GUIもいろいろあるぞ(XMaxima、wxMaxima、TeXemacs…)。
xmlじゃないと絶対に駄目ではなくって、アスキー/形式なしでも支障ないのなら
今は諦めてGUIを作ってる人の対応待ちかなぁ。 >>215
ありがとうございます。
慣れれば別段問題なさそうなので、、
とりあえずアスキー形式で使おうと思います。 >>195
(%i1) solve([x^2+y^2=8,(x-2)^2+(y-2)^2-(x^2+y^2)],[x,y]);
(%o1) [[x=1-sqrt(3),y=sqrt(3)+1],[x=sqrt(3)+1,y=1-sqr(3)]] octaveをhomebrewでmacにインストールできないんだよな
なんでなんだろ
el capitanでbrew でインストールしてるときにエラーがでる >>219
Mathematicaと比べて、微妙に機能制限してるのは…
商売上、仕方がないんでしょうね。
RealDigits[]使おうとしたら使えなくてちょっと困ったw 「ラズパイ買う金も無いのかよwwww」と云われると…その通りなんだけど
orz maximaについて質問です。ver.11.08.0です。
f(x):=diff(g(x),x);
subst(g(x)=X(x)+Y(x),f(x))-diff(X(x),x);
と入力すると、出力は
d/dx(X(x)+Y(x))-d/dx(X(x))
となるんだけど、この出力を得た上で更に答えを
d/dx(Y(x))
に持っていくにはどうしたらいいですか? >>222
現行のMaximaは5.38.0が最新みたいだけど >>222
積分して微分したらできた。とりあえず
integrate(%, x);
diff(%,x,1);
wxMaxima-15.08.2 maxima-5.37.2 >223
wxMaximaだった。。無知でした
>224
ありがとう。これで当面の目的は達せられそう ウルフラムアルファまじすげぇええええぇ
Input interpretation:
(1+2+3+...+n)^2=1^3+2^3+3^3+...+n^3
Result:
True wxMaximaでsin^2(M*Δk/2)/sin^2(Δk/2)を-3<Δk<3で描きたいです。Mは後で自由に変えて、例えばM=50,100を同じグラフ上に描きたいです。 >>227
sin(M*x/2)^2/sin(x/2)^2;
wxplot2d([at(%, M=50), at(%, M=100)], [x, -3, 3]); 64ビット版のoctaveが使いたいなら、私がビルドしたものをあげてある。
公式チームに64ビット版問題なく使えるからあげてくれと申し入れているがあげてくれないから、自分のサイトにあげた
http://www.tatsuromatsuoka.com/octave/Eng/Win/
ちなみに私は、ここはじめてきたし、これからも来ないとおもうので
なにかあったらunix板のoctaveスレに来てくれ。 >>208
SourceForge でbug ticketをcreateしてそこに書いたら?
Maximaづかいではないから(インスコはしてある)口ださんけど
常用している gnuplot,octaveはbugを見つけたらさっさと本家に挙げている。
2chで話題にするのは他の人バグをしらせるという意味はあるからいいけど,
もう少し踏み込んで本家にあげてほしい。
フリーウェアではユーザーからのフィードバックは大事だし,それがそのソフト
の発展につながるんだから。 >>218
私はMacづかいではないが,本家のhelp MLにいきな。
その手の質問はしょっちゅう出てくるし,親切なMacのoctaveユーザーが答えてくれる。 229-231です。もう来ないようなこと書いてすみませんm(__)m。書き方も横柄ですみません。
で,octaveは数学アプリケーションというより数値計算アプリケーションだから あるゆる科学,工学,経済学,統計学などをカバーします。 Maximaはoctaveよりはるかに数学色が強いですが,私のような数学が苦手な 工学系の人間にとって便利なツールです。
数学板にあることは別に問題はありませんが,広い幅の人々を受け入れてくれる とよいなあと思っています。 マツオカくん
ここはユーザーメーリングリストじゃ
ないんだから突っぱねるような
レスはよしなさいw >>233 だから、反省して232で謝ってんじゃないですか。本当にm(__)m。
まあ、仲良くしていきましょう。 お願いします。m(__)m。
Mac上のoctaveのインストールに関しては以下を見てとなっているんですが、
http://wiki.octave.org/Octave_for_MacOS_X
結構難しそうですね。
Macでのoctaveでわからないことがあれば、やっぱり頑張ってOctaveのHelp MLにいくのが一番です 。
親切なMacのパワーユーザーが教えてくれるます。そういう事例はなんどもみましたから。 今さらですが
>>147
3.6.4のMinGW版はインストーラを使わない。MSVC版もバージョンの違うoctaveとは共存できるはずなのだが。
3.6.4のMinGW版なら、フォルダを丸ごと削除していい。レジストリを使ってないから。
3.6.4のMSVC版なら、octaveのインストールフォルダにuninst.exeがあるから、これを実行すればいい。
でも、怒られるのは他の原因のような気がしますが、思い違いかもしれません。 >>194
C言語と同じです。カレントディレクトリにあれば、ファイル名だけでいいです。フルパス、相対パスがつかえます。 >>184
3Dのプロットでカクカクなのは、meshgridの切り方が荒いせいでしょう。バージョンはよほど古いものでなければ関係ありません。
ただし、あまり細かく切りすぎると描画が遅くなります。
以下の例は、いかがでしょう。
X=linspace(-pi/2,pi/2,50);
[XX, YY] = meshgrid (X);
ZZ=sin(XX.*XX+YY.*YY);
colormap(bone);
surfl(XX,YY,ZZ);
shading interp;
colormap(bone)は淡色のやや青みがかった灰色のカラーマップに設定する命令であり,shading interpは,メッシュ間の色を補完し滑らかに表現する命令です。 >>135
octaveが自前で搭載した表示機能ですが、現在はqtとfltkがあります。
octaveのguiとoctave --no-guiで起動した場合qtとfltKが、octave-cliで起動した場合は、fltkのみ使えます。
普通はqtを使うとおもいます。
どちらも、open GLを使っているので3dのプロットのレンダリングが高速です。
ただし、単精度実数なので、広いレンジの対数プロットや大きなオフセットがある場合のプロットでは問題があります。
その場合はgnuplot graphics toolkitを使う必要があります。
また、TeXモードを使うときもgnuplotを使う必要があります。
場合によって使い分けるのがよいとおもいます。 >>240 それは違う。全レスオヤジだ。でも、ちゃんと仕事してるぞ。 maximaで、方程式の解をグラフ化することはできませんか?
たとえば、x = a cos x の解をaを変えながら求めて、その解をaの関数としてグラフにする、という方法です。
解を求めるだけならfind_rootでできますが。 ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> ¥
>性犯罪者の増田哲也(50歳・東京都足立区千住寿町)が
>8月4日にJR牟岐線の列車内で、午後4時20分ごろから約50分にわたり、
>徳島県内の女性(21歳・専門学校生)の胸や太ももなどを触った疑いで、
>8月5日未明、県迷惑行為防止条例違反(痴漢行為)容疑で徳島県警阿南署に
>逮捕されました。
>
>性犯罪者 増田哲也の供述
>「夏休み期間に、講演活動を兼ねて旅行していた。好みの女性だったのでムラムラした」
> >>242
x = a*cos(x);
wxplot2d(rhs(solve(%, a)[1]), [x, -1, 1])$ >>253
質問者ではないですが。
Maxima凄いな。
octaveだともっと手間かかる。 >>253 >>254
a=1の時
find_root(x=cos(x), x, -5, 5);
0.7390851332151607
そうなっていないような。
書かれるグラフはなに?
でOctaveでは。
function ret=fs_fun(a)
f=@(x) x-a*cos(x);
ret=fsolve(f,0);
end
a=[-1:0.05:1];
plot(a, arrayfun(@fs_fun, a));
ってとこかな。 octave-4.0.2のリリースにあわせて,拙Wikiのインストール方法を更新しました。
http://www40.atwiki.jp/gnuoctavejp/
ご意見を頂ければ幸いです。
また,Unix関係は,Ubuntuしか事情が分からないので他のディストリビューションの方が
加筆していただけると幸いです。
また、Macは全然わからないのでよろしくお願いしたいと思っています。 >>255
>>253のグラフは横軸がx、縦軸がaです
軸を入れ替えれば>>256と同じになりますね >>258
なるほど。
投稿者の意図からして、aを横軸にしたいのだと思います。
どうすればいいですか?
ちょっとやってみたけど失敗したので。 >>269
x = a*cos(x);
wxplot2d([parametric, ev(rhs(solve(%, a)[1]), x=t), t], [t, -1, 1])$
媒介変数を使って軸を入れ替えました
横軸がa、縦軸がxです >>270
なるほど。Maximaいいですね。媒介変数使えるのですね。gnuplotで逆関数をプロットするときよく使います。 >>270 >>271
そうか。この問題はa=x/cos(x)とかけるからx/cos(x)の逆関数を描けばいいわけだ。
スレチだがgnuplotなら
set parametric
plot [-1:1] t/cos(t) ,t
だね。 >>272
octaveなら
x=-1:0.05:1;
plot(x./cos(x),x);
っつてとこ