1 名前:132人目の素数さん [2001/03/20(火) 02:34] ないので立てました。 Mathematicaについて語るスレです。 大学で初めて出会った時は感動したなぁ。(NeXT版…) Plot3Dでよく遊んだものです。 四次方程式の一般解を出力して、壁に貼ったりしてました(w
671 名前: mailto:sage [03/08/23 19:37] ある演算をさせて結果がたとえば If[x>0,・・・,〜〜〜] のようになったとき、・・・の部分だけをある変数に代入するにはどうすればいいのでしょうか?
672 名前:132人目の素数さん mailto:sage [03/08/23 20:33] >>668 > 123.4567890123456789 システムによっては任意精度 <- なんじゃそりゃ わかってて書いてるのかも知れないが、システムによって機械精度の桁が違うから。 計算速度のために機械精度で扱える時はあつかおうとするという Mathematicaの設計の結果。 > リファレンス「入力の文法」にはdigits.digitsは「近似数」としか書かれてない。 digits.digitsって? >>670 そのプログラムバグってるぞ。 x = 0.9999999999999999999999999 で試してみ。 # というかRationalize[x,0]の不完全版を回りくどくやっているだけ。 欲しいのは FromDigits[RealDigits[x], 10] あたりか? >>671 状況が良くわからないが、 If[x > 0, ..., ...][[2]] とか、もしかしたら Simplify[If[x > 0, ..., ...], x > 0] とか。
673 名前:132人目の素数さん mailto:sage [03/08/23 20:36] >>668 わかった > digits.digits 機械精度にしろ任意精度にしろ近似数、ということ。 # 内部表現が2進なら必然的にそうなるな。
674 名前:671 mailto:sage [03/08/23 21:46] >>672 Simplify[If[x > 0, ..., ...], x > 0] でできました! ありがとうございました
675 名前:132人目の素数さん mailto:sage [03/08/23 22:40] >>672 あれー、なんぜバグっちゃうんだろー。 Rationalize[0.42857142857142857142857142857]とかの場合3/7になっちゃうから そうならない版を作ったつもりだったんだけど…。 FromDigits[RealDigits[x], 10]かあ。すごいです。つーか、こんな関数しらなかった…。
676 名前:132人目の素数さん [03/08/24 16:33] Mathematicaで平方完成する方法を教えてください
677 名前:132人目の素数さん [03/08/24 17:41] 降ベキの順に表示させる方法ってないの?
678 名前:132人目の素数さん mailto:sage [03/08/24 20:18] >>676 H[f_, x_] /; PolynomialQ[f, x] := Module[{r, b, c}, r = (x - b)^2 + c; r /. Flatten[SolveAlways[f == r, x]]] Example: H[x^2 + 3 x + 2, x] >>677 TraditionalFormか、別の方法としては、 HoldFormをもちいた並び替え関数を書く。
679 名前:132人目の素数さん mailto:??? [03/08/24 20:56] 二次の係数は?
680 名前:132人目の素数さん mailto:sage [03/08/24 21:09] >>679 それぐらいは自分で直せよ…。
681 名前:132人目の素数さん mailto:sage [03/08/24 21:11] 日本語ヘルプ欲しーーーーーーーーーーー!。 いちいちmathematicaの公式サイトみるの大変…。 つーか、日本語版欲しい。
682 名前:132人目の素数さん mailto:sage [03/08/24 22:12] >681 日本語キット(Help 日本語) が \50k ぐらいで売ってるよ。 というか、もう日本語ヘルプ強制バンドル品しか買えない。 Mathematica のヘルプの英語ぐらいは読めるように しておいた方が何かと便利だと思うんですけど。。。 やっぱり日本語ヘルプのニーズは多いのかなぁ。
683 名前:132人目の素数さん mailto:sage [03/08/25 00:02] >>682 高すぎ…。
684 名前:132人目の素数さん [03/08/25 00:36] >>678 Mathematicaの関数としては、ないわけですね。自分で作るしかないってことか。 ありがとうございました。
685 名前:132人目の素数さん mailto:sage [03/08/25 01:37] このソフトの中の人って頭良いけどちょっと融通が利かないというか…。
686 名前:132人目の素数さん [03/08/25 02:29] >>685 人が入ってたのかよw
687 名前:中の人 mailto:??? [03/08/25 12:20] ユーザにもっと勉強してもらいたいものだ
688 名前:132人目の素数さん mailto:sage [03/08/25 16:52] >>687 sin[x]とかやった時に 「Sin[x]じゃないですか?」 とか言ってる暇があったらそれで計算しろカス
689 名前:132人目の素数さん mailto:sage [03/08/25 17:29] >>688 みたいなカス(例えば>>644 )が多いなこのスレ。 実際はMathematicaの中の人は他の同系統のソフトの人と比べると、 「頭(知識)は普通(以下?)だが凄く融通が効く」 人だよ。
690 名前:132人目の素数さん mailto:sage [03/08/25 18:22] >>689 人の平均から比べたら融通が利かない方だと思われ
691 名前:132人目の素数さん mailto:sage [03/08/25 18:46] >>689 は日本語を覚えたウルフラム
692 名前:132人目の素数さん mailto:sage [03/08/25 22:32] まあ日本国内在住人にとっては腹の立つほど値段が高いこと、 それ以外は悪くないと思いますけどね。 もっともあの英語マニュアルを通して読めたのは 暇だった学生だったからなので、普通の生活では ちと厳しいかな。 国産の RISA/ASIR も10万くらい払っていいから 他の商用並の使い勝手にならんかな。
693 名前:132人目の素数さん mailto:sage [03/08/25 22:36] >>690 それはそうだな。でもプログラミング言語ってのは厳密さがいいんだよ。 「sin?どうせSinと同じだろ」とか「+? ここは普通-だろ」とかやられたら 実際困る。
694 名前:132人目の素数さん [03/08/25 22:48] >>692 要はMathematicaの買えない貧乏人のひがみだろw
695 名前:132人目の素数さん mailto:sage [03/08/25 23:23] >>693 もちろんそんなのは分かってる。所謂ジョークだよ。
696 名前:132人目の素数さん mailto:??? [03/08/26 14:19] list={{Aaa[a],Aaa[b],Aaa[c]},{Aaa[d],Aaa[e],Aaa[f]},{Aaa[g],Aaa[h],Aaa[i]}} というリストがあって(ホントはもっと長い)、こいつを {{a,b,c},{d,e,f},{g,h,i}} にしたいのですが、エレガントな方法を教えてつかあさい。 Tableは使わないでね。
697 名前:132人目の素数さん mailto:sage [03/08/26 15:32] >>696 (#[[1]] & /@ # &) /@ list
698 名前:697 mailto:sage [03/08/26 15:35] >>696 Map[First, list, {2}] のほうがいいな。
699 名前:132人目の素数さん mailto:??? [03/08/26 20:09] >697 >698 できました。Thanks さすがですねぇ
700 名前:132人目の素数さん [03/08/26 20:23] 教えてつかあさい。
701 名前:132人目の素数さん mailto:sage [03/08/27 01:40] mathematicaの初心者講座やって下さい。
702 名前:132人目の素数さん [03/08/27 02:54] yada
703 名前:132人目の素数さん mailto:sage [03/08/27 07:25] >>701 Shift+Enter
704 名前:132人目の素数さん mailto:??? [03/08/27 10:06] MacではEnterだけで実行!
705 名前:supermathmania ◆ViEu89Okng [03/08/27 11:35] Re:>701 MathematicaにはHelpが付いているはずだ。それを読むといいだろう。 まずは、Shift+EnterとExit[]と、+-*/^という演算子と、関数の引数は四角括弧で採ることを覚えよう。
706 名前:132人目の素数さん mailto:sage [03/08/27 19:21] >>705 Exit[]知らなかった!!
707 名前:706 mailto:sage [03/08/27 19:22] つーか、何の意味があるの?DOSみたいに終了するのかと思いきやしないし。
708 名前:132人目の素数さん mailto:??? [03/08/27 20:22] Quit[] とすると、カーネルが終了するのだ わかったかね
709 名前:132人目の素数さん mailto:sage [03/08/27 20:41] >>708 カーネルってなんですか?あとそれ以前にExitはどんなときに役に立つのですか?
710 名前:abc [03/08/27 21:37] おかねもうけ情報見つけました pocket.muvc.net/job/index.html
711 名前:132人目の素数さん [03/08/28 02:03] Windowsです [スタート]の[プログラム]メニューにあるMathematicaでカーネルを2まで同時に立ち上げることができる。 (プロフェッショナル版)
712 名前:132人目の素数さん [03/08/28 07:48] xyではなくてx*yを使うの?
713 名前:132人目の素数さん mailto:??? [03/08/28 09:37] カーネルってのは、 フライドチキンのおじさんのことだ 覚えておけよ
714 名前:132人目の素数さん mailto:sage [03/08/28 22:04] 普通乗算はスペースだよな。
715 名前:132人目の素数さん mailto:sage [03/08/31 21:04] Random[]で出る結果は何通りくらいある?
716 名前:132人目の素数さん mailto:sage [03/09/01 06:52] >>715 意味わかんね
717 名前:132人目の素数さん mailto:sage [03/09/01 18:06] >>716 Random[]で出る数は何種類から選ばれるかということです。 多ければ多いほど優秀、と。
718 名前:132人目の素数さん mailto:sage [03/09/01 23:07] >715 Help に書いてないか? まあ書いてないとして高々二桁 bit なんで十進数で 33 桁程度ではないか?基本的には剰余だろうから。。。
719 名前:132人目の素数さん mailto:sage [03/09/03 03:14] >>718 ありがとう。 ピッタリ1とかピッタリ0ってありますか?
720 名前:132人目の素数さん mailto:sage [03/09/03 17:31] SeedRandom[Random[]]ってやるとかなり増える?
721 名前:132人目の素数さん mailto:sage [03/09/03 22:21] >719 ぴったりですか。。。原理的にはあるんだけど 実数乱数なら無いとしたほうがよく 整数乱数なら有りそうね。でもこれも Help に書いて無いか? >720 基本的には Random[] は余りを周期的に利用していると考えて そう外れがない。 SeedRandom は、この周期のどこから始めるかを指定する だけなので、増えんよ。
722 名前:132人目の素数さん mailto:??? [03/09/05 15:45] Mathematica Ver.5日本語版リリース! あげ ttp://www.wolfram.com でも代理店はどこもVer.4のままれす
723 名前:132人目の素数さん mailto:??? [03/09/11 18:05] Ver.5 クラスルームってのは特別定価4万6千円だとよ
724 名前:132人目の素数さん mailto:sage [03/09/17 09:30] mathematicaで計算実行したら、 ”Internal counter overflow. Some expression evaluations may not run to their final fixed points. Try redoing your computation on a 64-bit enhanced version of Mathematica.” こんなエラー出てしまって計算やってくれないのですが、これってどういうことですか? ちなみにVer.4です
725 名前:EXCITE 翻訳 [03/09/18 03:00] 内部カウンタのオーバーフロー。いくつかの表現評価はそれらの最終固定 小数点で実行不可能かもしれません。Mathematicaの64ビット増強された バージョン中のあなたの計算をやり直してみてください。
726 名前:132人目の素数さん mailto:sage [03/09/18 14:35] k1=1/12; k2=1/6; g[t_] = 2.30743*Exp[t^3.30352]*t^2.30352 h[t_] = (t*(k2+Sqrt[k2^2-t*k1^3]))^(1/3) k[t_] = h[g[t]] + k1*g[t]/h[g[t]] のとき、 NSolve[Integrate[h[t], {t, 0, tk}] == 1, {tk}] を解きたいのですが、式が複雑すぎてエラーの嵐でした。 FindRootでもできませんでした。 先生によれば工夫すればできるらしいのですが、さっぱりわかりません・・・ どなたか教えていただけないでしょうか? あと、g[t]の値はある計算結果なのですがそのままだと 2.30743*Exp[0.t^3.30352]*t^2.30352 となっているんですが、 0.t^3.30352 = t^3.30352 でいいんですよね?見たことない表現なので戸惑ったのですが・・・ なんでこんな表現になるんでしょうか?
727 名前:132人目の素数さん mailto:sage [03/09/18 22:18] >>726 g も k も関係ない。 解けないのは式が複雑だからじゃなくて、使いかたが間違っているから。 NSolveはpolynomialを解くものであって、一般の式は解けない。 数値解は FindRoot[NIntegrate[h[t], {t, 0, tk}] == 1, {tk, {1, 2}}] 等。(ただし、Sqrtの中身が負にならないtの範囲で) 0.t に見えたのは0. tで、0. * tだろう。その解釈は間違い。
728 名前:726 mailto:sage [03/09/18 23:20] >>727 レスどうもです。 726にも書きましたがFindRootでもできませんでした・・・ また、0. * tって0*tとは違うんですよね・・・? 0. =桁数の小さい小数ってことですか?
729 名前:726 mailto:sage [03/09/18 23:31] >>727 書き込んでくださった FindRoot[NIntegrate[h[t], {t, 0, tk}] == 1, {tk, {1, 2}}] でやってみたところできました。 FindRoot[Integrate[h[t], {t, 0, tk}] == 1, {tk, 1}] でやったらできなかったのですが、なぜこれだとできなかったのでしょうか・・・?
730 名前:132人目の素数さん mailto:sage [03/09/18 23:36] >>729 0.が常に0と区別できないRealsを表すのかどうかは知らない。 FullFormすればその0.の値はわかるけれど。 HelpのFindRootの項を読みなさい。
731 名前:726 mailto:sage [03/09/20 02:02] >>730 FindRootについて勉強してみます ありがとうございました
732 名前:132人目の素数さん mailto:sage [03/09/20 12:51] >>731 ヘルプ読むのに10分もかからんだろ。そして読んだら、 > FindRoot[Integrate[h[t], {t, 0, tk}] == 1, {tk, 1}] でもできないとおかしいと気づくはず。 答えが大体わかってたから、数値計算だけでもとめられる{tk,{1,2}}の 指定をしただけだ。 {tk,1}と指定すると、ニュートン法を行おうとする。 Integrate[h[t], {t,0,tk}]の微分は計算できる(h[t])から、 ニュートン法が適用できるはずだ。 実際遅いだけで、(Ver. 4.2では)解ける。
733 名前:132人目の素数さん [03/09/22 17:36] どなたか教えて頂けないでしょうか。ほとほと困り果てております。 「1カラム→実数、 2カラム→複素数」 のテキストファイルをリストとして読み込ませるためには、どのよう にしたらよいのでしょうか?
734 名前:supermathmania ◆ViEu89Okng [03/09/22 17:44] Re:>733 C言語なら楽勝だよ。
735 名前:132人目の素数さん [03/09/22 17:59] >733 何のリストに読み込ませたいんだい?
736 名前:132人目の素数さん [03/09/22 18:03] >733 Excelに貼り付けて文字列関数でCONCATENATEを使って結合すれば? 括弧の部分とかは、固定の文字列として入れればいい。
737 名前:132人目の素数さん [03/09/22 18:43] >>735 Mathematicaで読み込ませたいです。
738 名前:132人目の素数さん [03/09/22 18:45] リストはこんな感じです。 ↓ 実数 複素数 1 3+I2 2 4+I5 3 8+I9
739 名前:132人目の素数さん mailto:sage [03/09/22 19:26] >>739 data.datの中身が、 1 3+2I 2 4+5I 3 8+9I なら、 ReadList["data.dat", {Number, Expression}] I2, I5, I9などとなっていたら、Symbolと理解されてしまうので、 あらかじめ加工しておくか、Stringで読み込んでMathematica内でパースする。
740 名前:132人目の素数さん [03/09/23 10:48] >>739 本当にありがとうございます。これから試してみます!
741 名前:132人目の素数さん [03/09/23 17:38] Readlist[#,Record]& で読み込み Characters でばらす。
742 名前:132人目の素数さん mailto:sage [03/09/25 00:45] 灯台に再びサイトライセンスで導入されるようだな。 1年の解析Bを取る連中は、課題を解く手間がずいぶん少なくなるだろう。
743 名前:132人目の素数さん mailto:sage [03/09/27 13:12] 今入ってないのか 教官が授業で使っててずっけーって思ってた
744 名前:132人目の素数さん [03/10/05 21:23] f[x_] := Print[b]; Return[x] という関数を定義したとき f[6]と入れても bとプリントされるだけで、6が返ってきません。 どこが問題なのか分かる方教えてください。
745 名前:744 [03/10/05 21:37] f[x_] := Module[{}, Print[b]; Return[x] ] こう定義し直したら f[6]を実行した時 bがプリントされて、6が返ってくるようになりました。 どうしてよくなったかは分からないですが…
746 名前:132人目の素数さん mailto:sage [03/10/05 22:00] >>745 >>602 を見ろ。
747 名前:744 [03/10/05 23:02] >>746 ありがとうございます。 こう定義し直して、うまく行くことが分かりました。 f[x_] := ( Print[b]; Return[x] )
748 名前:132人目の素数さん mailto:sage [03/10/07 23:53] y^2=x^3-2 (-2<=x<=2)このグラフが書きたいのですが・・・ Plot[Sqrt[x^3 - 2], {x, -2, 2}]こう書くと上手くいきません。 どなたか教えてくださいませm(__)m
749 名前:132人目の素数さん [03/10/08 02:02] >>748 そりゃあ、x^3-2<0の部分は書けないに決まってる。
750 名前:132人目の素数さん mailto:sage [03/10/08 15:25] >>748 <<Graphics`ImplicitPlot` ImplicitPlot[y^2 == x^3 - 2, {x, -2, 2}, AspectRatio -> 1]
751 名前:748 mailto:sage [03/10/08 21:53] >>749 さん >>750 さん (゚´Д`゚)どうもありがとうございます。助かりました。
752 名前:132人目の素数さん [03/10/12 18:49] だれかWebMathematicaを使ってWeb上で数式処理が無料でできるサイトを構築してください! 俺にはMathematicaを個人的に買える予算などないんです!学生じゃないし!
753 名前:132人目の素数さん mailto:sage [03/10/13 02:23] おとなしくみゅーぱっどでも使っとれ
754 名前:132人目の素数さん [03/10/15 23:37] >>753 プロ版じゃないと見栄えが悪いと言ってみる。
755 名前:132人目の素数さん mailto:??? [03/10/16 09:39] じゃ、MAXIMA使えばぁ
756 名前:132人目の素数さん mailto:sage [03/10/16 12:08] フリーウェアでほとんどの数式をグラフにしてくれるソフトあるよね。 どんな極方程式もグラフにしてくれるやつ。すげー楽しい
757 名前:132人目の素数さん mailto:sage [03/10/19 14:52] Functionのコマンドについて質問です x^2+y^2が0になるときのxを求めるもので 条件としてyはすでにリストになっています(例えば、y[[1]]=1,y[[2]]=2) そこで、functionを使ってxについての方程式をつくり求めようとしました が、 A=Table[0,2]; Do[ A[[i]]=Function[{x,y},x^2+y^2][x,y];,{i,1,2} ]; として、A[[1]][1]と出力した場合にx^2+1[1]となってしまい、xに1を代入してくれません 理想としては1+1(=2)となってほしいのです どのようにすれば、求めることが出来るのでしょうか? よろしくおねがいします
758 名前:132人目の素数さん mailto:sage [03/10/19 16:28] >>757 貼っても動かない上に全く意味不明だ。 Table[0,2]とはなんだ。 (x^2 + y^2)[1]でなにがやりたいのだろうか。
759 名前:132人目の素数さん mailto:sage [03/10/19 16:38] x^2 + y^2 が0になるような整数は(0,0)しかない。
760 名前:757 mailto:sage [03/10/19 18:15] すいませんでした。実際xはもっと複雑な関数でして、わかりやすくするために xにしてしまいました。 つまりやりたいことは、ある2つの変数(x、y)をもった式があります 条件としてyはすでに決まっていてリスト化されています(例:yの1番目=1、2番目=2、n番目・・・) そこで、yがn番目の時に式=0となるときのxを求めたいのです
761 名前:132人目の素数さん mailto:sage [03/10/19 20:33] y = Range[10]; A := Table[Function[x, x^2 + y[[i]]^2 // Evaluate], {i, 1, 10}]; A[[1]][1] なんども書き込んでるんだけど反映されない…
762 名前:132人目の素数さん [03/10/19 21:17] Plotを使ってグラフを描いたときに目盛りに書かれる数字を大きくする方法ってあるんでしょうか。 グラフを大きくしたいときに表示されている部分の角をマウスでドラッグして大きさを変えているんですが、 目盛りの数字が大きくならないんです。 最初に描かれるグラフの大きさも変えたいんですがこちらも分かりません。 全然数学な内容でなくて申し訳ありませんが教えてもらえないでしょうか。
763 名前:757 mailto:sage [03/10/19 22:29] ありがとうございます。そのやり方でできました。 あの、そこで例えばx^2+y^2=100と置いた時に x^2+1=100, x^2+4=100 ・・・ x^2+100=100と10個のリスト化された式がでます そこで、xを求めるためにFindRootを使ったのですがリスト化されたものに対して 答えを出そうとするとうまく行きません 答えをリストとして出すためにはどのようにすればいいのでしょうか よろしくおねがいします
764 名前:132人目の素数さん mailto:sage [03/10/19 23:09] 少しは自分で考えろ。
765 名前:132人目の素数さん mailto:sage [03/10/19 23:25] >>762 DefaultFont -> {"Bold", 10}
766 名前:132人目の素数さん mailto:sage [03/10/19 23:50] >>765 ありがとうございます。明日早速試してみます。 >>764 すみません、Plot周りのオプションで探してはみていたのですが 「それじゃ見つかるわけがない」と猛反省しています。
767 名前:772 mailto:sage [03/10/20 14:05] 自己解決いたしました。ありがとうございました
768 名前:132人目の素数さん [03/10/22 20:19] mathematica5のStudent版買った人いる?
769 名前:132人目の素数さん [03/10/26 20:25] 買ったよ。パスワード申請が相変わらず(`×´)丿ウザイ!!
770 名前:132人目の素数さん [03/10/26 23:26] 最近のMathematicaも Windows版、Mac版、Linux版とかは一枚のCDで提供されているんですか? 少なくとも3.0の頃はNeXTとかも一緒に入っていて プラットフォームの乗り換えの時、便利でしたが。
771 名前:132人目の素数さん mailto:age [03/10/27 00:45] Winnyで落としたんだけど、なんかパスワードだか必要で使えん 意味ねー