1 名前:132人目の素数さん [2001/03/20(火) 02:34] ないので立てました。 Mathematicaについて語るスレです。 大学で初めて出会った時は感動したなぁ。(NeXT版…) Plot3Dでよく遊んだものです。 四次方程式の一般解を出力して、壁に貼ったりしてました(w
641 名前:132人目の素数さん mailto:sage [03/08/21 03:33] 0.11111111111111111111111111 って入力して実行すると 0.11111111111111111111111111 って出て、それをクリックしてエンター押すと 0.1111111111111111111111111099999999999964597 って出るんですがどうゆう意味があるのでしょうか?かなり気になるんですが。
642 名前:132人目の素数さん [03/08/21 03:40] 意味はない。Mathematicaが糞なだけ。(w
643 名前:132人目の素数さん mailto:sage [03/08/21 05:45] >>641 ネタで言ってるのかどうか知らんが・・・ 機械精度の演算がどういう仕組みで行われているかを一度考えて見れ。
644 名前:132人目の素数さん mailto:sage [03/08/21 07:45] それにしてもクソですな。そのくらい改善できそうなものだが。
645 名前:supermathmania ◆ViEu89Okng [03/08/21 15:58] Integrate[Exp[1/(x^2-1),{x,-1,1}] NIntegrate[Exp[1/(x^2-1),{x,-1,1}] と云おうとしたら、間違えてしまった。 これなら計算できるのかな?
646 名前:132人目の素数さん mailto:sage [03/08/21 19:01] >>644 あのさ、Mathematica では小数点を付けた数値は機械精度 で計算されるとマニュアルに書いてあるから、 0.11111111111111111111111111 と書いた時点でこれは 11111111111111111111111111/100000000000000000000000000 とは全然違う値になるわけだ。だから、もし 0.11111111111111111111111110000000000000000000 とかになったら、Mathematicaは機械精度の計算を唄っておきながら 実際にはサポートされていないことになる。 この前も同じような質問があったけど、今の大学って数値計算の理論 とか教えないんだろうか。もし習ったことが無いなら、そういう技術者や 科学者にとって必要最小限のことも教えない大学なんて行く意味がないよ。 >>641 や>>642 、>>644 が通っている大学の学長は、こういう不祥事(と 言っても良いよね)に対する記者会見を開いても良いぐらいだと思う。鶴を 燃やした事件みたいにさ。高校生だったら、まあ仕方ないけど。 いや、今日は社会人になっても、2次方程式の解を計算するルーチンで 解の公式をそのまま使うような馬鹿に遭遇したんで、イライラしてるのかも しれん。桁落ちが起きるだろ、アホが!お前の先輩の文型出身の奴でも ちゃんと場合わけして回避してたぞ。
647 名前:132人目の素数さん mailto:??? [03/08/21 20:13] NIntegrate[Exp[1/(x^2-1)],{x,-1,1}] =0.443994 ですな。
648 名前:132人目の素数さん mailto:??? [03/08/21 20:14] 数値解析の講義なんか、あったって選択だろ。 そんなもんやってる時間があったら、 純粋数学やるわいな 数学専攻ならな
649 名前:132人目の素数さん mailto:sage [03/08/21 20:35] >>646 俺は高校生です。仕方ないです。
650 名前:132人目の素数さん mailto:sage [03/08/21 22:29] >>646 > あのさ、Mathematica では小数点を付けた数値は機械精度 > で計算されるとマニュアルに書いてあるから、 こんなことは書いてない。 おまえの書いた 0.11111111111111111111111111 はArbitrary-Precision Numberだ。 つまり、多倍長数の内部表現が二進であるか十進であるかという実装の問題だ。 偉そうなこと書くんだったらもっと勉強しろ。 一目見たらdoubleで書けないことぐらいわかれよ。 64bit以上のCPUつかってんだったら機械精度かも知れんがどっちにしろ 嘘だしな。
651 名前:650 mailto:sage [03/08/21 22:34] 一応書いとくが、二進で結構だと考えてるよ。 # 上の馬鹿といっしょにされてはかなわん
652 名前:132人目の素数さん [03/08/22 05:18] このスレ、人を罵倒するやつが多いな。
653 名前:644 mailto:sage [03/08/22 06:20] >>646 おいおいパターソン&ヘネシーくらい読んだことあるぜ。 0.1111111111111111111111111 != 111111111111111111111/1000000000000000000 (桁は適当ね)になっている実装がクソだと言ってるの。 機械精度なんて本来は一切要らないんだから。 そんなものこの時代のマシン特有の都合だろ? もちろんMathematicaブックを読めば$MachinePrecisionや N[]や12.3`なんかについてあれこれ載っている(はず)。 しかし、精度という基本的なことがらに付いてあれこれ頭を悩ませる実装および 言語体系が「クソですな。改善できそうなもんだが」というわけ。 掲示板の書き込みで憂さ晴らすのは不健康だね。
654 名前:132人目の素数さん [03/08/22 06:49] よくわからんがマスマティカはくそってことでつか?
655 名前:132人目の素数さん [03/08/22 06:50] >>653 646は書きすぎだと思うが、 > 機械精度なんて本来は一切要らないんだから。 > そんなものこの時代のマシン特有の都合だろ? それは無いだろー
656 名前:132人目の素数さん mailto:sage [03/08/22 11:57] >>646 知りもしないものを「クソ」あつかいか… それに少し上のレスぐらい読め。 機械精度なんて関係ないんだよ。 計算機の上では有限の精度しか実現できないことをしっているよな? 0.1111111111111111111111111 == 111111111111111111111/1000000000000000000 にしたところで何か計算したとたんにほぼ確実に10進数表示での 数学的な等号は成立しなくなるんだぞ。 何か意味があるか? 精度の保証だけしとけば十分だろ。 Precision, Accuracyについてマニュアルを読め。
657 名前:132人目の素数さん mailto:sage [03/08/22 12:09] >>646 この時代のマシンのことを無視してプログラム書いてどうすんだよ。 おまえが書くプログラムってどれも実用には耐えないんだろうな。
658 名前:132人目の素数さん mailto:sage [03/08/22 20:32] 私は高校生なので優しくしてください。 0.1111111111111111111111111を任意精度として扱ってもらう簡単な方法はないですか? いちいち111111111111111111111/1000000000000000000のように入力しなおさいと正しい結果が得られないのは不便なんですけど。
659 名前:644 mailto:sage [03/08/22 21:53] さあ香ばしくなってまいりました。これも5発売フィーバーか? >>658 に優しいアシストをすると、そういう小数でどんな計算したいのかを言えば、 より有益なレスがつくのではないかな?ていうか小数なの?有理数なの? ちなみに手もとのMathematicaブックには「0.142が近似値でなく 厳密な値であるならば、142/1000と有理数として入力しなければならない」 という記述をハケーン。 あと0.11111111111111111111`200 で200桁の有効数字が、 0.1111111111111111111111''200で小数点以下200桁までの正確さが保証されるんだと。 それで十分かな?どうよ? >>656 > にしたところで何か計算したとたんにほぼ確実に10進数表示での > 数学的な等号は成立しなくなるんだぞ。 おいおいそれこそ「計算」次第だろ。アタマ疲れてない? >>657 > おまえが書くプログラムってどれも実用には耐えないんだろうな。 CやF90で書くのとMmaで書くのとには違いが出て当然だろ。言語3〜4種しか知らん人?
660 名前:132人目の素数さん mailto:sage [03/08/22 22:35] >>659 ありがとう。
661 名前:132人目の素数さん [03/08/22 23:36] こんなところでしかストレス発散できないやつ。
662 名前:132人目の素数さん mailto:sage [03/08/22 23:55] >>659 つっこみどころ満載だけどおまえにはどんな反論しても 無駄みたいだからやめとく
663 名前:132人目の素数さん mailto:sage [03/08/23 00:51] > つっこみどころ満載だけどおまえにはどんな反論しても というと > さあ香ばしくなってまいりました。これも5発売フィーバーか? の辺りか?(w >659のカキコそのものはべつに間違った内容はないんじゃないの? ていうか5出るのか。洩れのマスマティカブック4.2版どうなるんだろう。 5対応版買った人に〜とか+'の項目だけ写させてもらおうかな。 みなさんどうしますか?ちなみに洩れはサイトライセンスで使ってる人ね。
664 名前:132人目の素数さん mailto:sage [03/08/23 00:53] なんでこんなにイタイんだろう・・・ 自覚ないのか?
665 名前:132人目の素数さん mailto:sage [03/08/23 01:17] >>663 大分前に出たかと
666 名前:132人目の素数さん [03/08/23 02:48] Mathematicaを持ってない貧乏人がひがんでるスレってここでつか?(w
667 名前:132人目の素数さん mailto:sage [03/08/23 14:08] >>659 >> にしたところで何か計算したとたんにほぼ確実に10進数表示での >> 数学的な等号は成立しなくなるんだぞ。 > おいおいそれこそ「計算」次第だろ。アタマ疲れてない? だからほぼ確実に、ってかいてんだよ。日本語ぐらい読めるようになろうね。 割算もできないしSinやCosも計算できないし、かけ算したらどんどん 桁が増えてくし、どうすんの? > CやF90で書くのとMmaで書くのとには違いが出て当然だろ。言語3〜4種しか知らん人? Mathematicaの設計の話をしてんだよ。 >>660 0.1111111111111111111111111は>>656 で書いてあるように自動的に任意精度と してあつかわれている。 例えば、 x = 0.1111111111111111111111111 y = 1000 x - 111 Precision[x] Precision[Sin[x]] Precision[y] とか入力すると、Mathematicaが精度保証して計算してるのがわかるよ。 高校生だからわからないのだろうが、>>644 はアホだぞ。
668 名前:132人目の素数さん mailto:sage [03/08/23 15:31] なんかこのへんのフレームは、任意精度と厳密数値(Schemeでいうexactnum)との 混同に基づいているような気がする。 ということで、高校生君に > 0.11111111111111111111111111 > って出て、それをクリックしてエンター押すと > 0.1111111111111111111111111099999999999964597 > って出るんですがどうゆう意味があるのでしょうか?かなり気になるんですが。 の理由を分かりやすく教えてあげれ > 誰か 多倍長整数や高精度近似数は2^16または2^32進数(整数要素の配列)らしい。 あとMathematicaBookの「3.1数」には 123.4 機械精度 123.4567890123456789 システムによっては任意精度 <- なんじゃそりゃ 123.4567890123456789` 機械精度 123.456`200 200桁の任意精度 <- precision 123.456``200 200桁の任意確度 <- accuracy 1.234*^6 機械精度 1.234`200*^6 200桁の精度 <- 任意精度ととっていいのか? とあるね。しかしこの例が微妙に分かり辛い... リファレンス「入力の文法」にはdigits.digitsは「近似数」としか書かれてない。 これは任意精度なの?機械精度?だれか教えてくれますか? わたしは普段整数しか扱わないので知らないままだった。
669 名前:132人目の素数さん mailto:sage [03/08/23 16:23] 0.111... を 1/2^n の和で作ってみると一番近い数が そのゴミがついた数字になる、というのが一番簡単な 説明だよね。 まあいくつ項を取るかというのは気になる点だろうけどね。
670 名前:132人目の素数さん mailto:sage [03/08/23 16:54] どうも高校生です。 1-0.999999999999=9.99978*10^-13 ってなるのが嫌なんです。これは分数で書くしかないですよね。 999999999999/1000000000000って書いたりするには桁数数えなければなりません。 かなり苦痛なので分数に書き換えるプログラムを書いてみました。 For[i = 0, x ≠ IntegerPart[x], x *= 10; i++]; Rationalize[x]/10^i xに厳密な数値に直したい小数を入れて、実行すればOKです。
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 でばらす。