[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 12/19 02:05 / Filesize : 264 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

〓Mathematica〓



1 名前:132人目の素数さん [2001/03/20(火) 02:34]
ないので立てました。
Mathematicaについて語るスレです。

大学で初めて出会った時は感動したなぁ。(NeXT版…)
Plot3Dでよく遊んだものです。
四次方程式の一般解を出力して、壁に貼ったりしてました(w

552 名前:132人目の素数さん mailto:sage [03/07/25 22:52]
>>550
質問の意図と違うから。その意味での違うなんだけど?なにがでしただよw

553 名前:550 mailto:sage [03/07/25 23:02]
>552

確かに s[[2,2]] だと、本当に欲しい {1,2} は
出てきませんね。失礼スマソ。

ただ -> に対して、通常考える /. 以外の [[]] 指定方法に
目を付けた点は悪くはないのでは、とちょっと擁護
してみたかったのでした。

554 名前:132人目の素数さん mailto:sage [03/07/26 10:30]
>>553
>  目を付けた点は悪くはないのでは、とちょっと擁護

何がやりたいのかわかりにくい、バグに弱い、
一般的な状況(a^2 + aを求めるとか)では使えない…
センス悪すぎるよ。

555 名前:132人目の素数さん [03/07/26 20:47]
リストから第一行目、第十一行目、第二十一行目・・・というふうに取り出したい
んですけど、どーすればいいですか?

556 名前:132人目の素数さん mailto:??? [03/07/26 22:46]
>554

Mathematicaのルールどおりだからバグに弱くない
おまえがセンス悪、
それとも正確ワルか


557 名前:132人目の素数さん [03/07/26 23:07]
                _,.. ---- .._
              ,. '"       `丶、
              /            ` 、
            ,..-‐/    ...:  ,ィ  ,.i .∧ ,   ヽ.
.         ,:'  .l .::;',. :::;/..://:: /,':/  ', l、 .i  ヽ
.          ,'  ..::| .::;',' :;:','フ'7フ''7/   ',.ト',_|, , ',.',
       ,'   .::::::!'''l/!:;'/ /'゙  /     '! ゙;:|:、.|、| 'l
.         ,'.  .:::::::{ l'.l/  、_  _,.      'l/',|.';|
       l  :::::::::::';、ヾ      ̄     `‐-‐'/! ';. '
.         ! :::::::::::/ `‐、        ゝ   |'゙ |
       | ::::::::/   \    、_, _.,.,_ ノ::: ! 
       |::::/.     _rl`': 、_     ///;ト,゙;:::::./    マターリと良スレ。
..      `´      /\\  `i;┬:////゙l゙l ヾ/          数ヲタがうなぎを食べられますように・・・
                ,.:く::::::::`:、\ 〉l゙:l  / !.|
.            /:.:.:.:\:.:.:.:.`:、ソ/:.:|    | |
           /.:.:.:.:.:.:.:.:.:\:.:.:.:У:.:;l   /./
.          /:.:.:.:.:.:.:.r'´`‐,`、:/.,.:‐{   | !`:、
           ,'.:.:.:.:.:.:.:.:.';_,゚.,ノ.:./,:':.:.:.:',  | |`、:|
           !:.:.:.:.:.:.:.:.:.:.゙、:.::/:.:.:.:.:.:.ヽ, / ,!:.:`、

558 名前:132人目の素数さん mailto:sage [03/07/27 00:52]
鰻食いてーー

559 名前:132人目の素数さん mailto:sage [03/07/27 00:53]
でも貧乏だからとても買えねーよ(;´Д`)

560 名前:132人目の素数さん mailto:sage [03/07/27 01:07]
>>556
>  Mathematicaのルールどおりだからバグに弱くない
あきれますな。悪いこと言わんからもっと謙虚になれ。
プログラムくんだ経験自体無いだろ?

たとえばFindRootで解が見付からなくてそのまま式自体が
かえったらどうなる?

[[]]ってのはかなりError proneだぞ。



561 名前:132人目の素数さん mailto:sage [03/07/27 09:37]
>555
tensor_a[..., Table[1+10 i,{i,0,5}], ....]
てな感じ。ポイントは添字指定で数字ではなく
リストを使うこと。

562 名前:550 mailto:sage [03/07/27 09:53]
>560
/. でも FindRoot そのままの式が返ってくると
あまりうれしくない気がするけど。。。

/. を使うと a^2+a /. みたいな純関数的使い方が出来て
見通しが良くなるのは確かに同意。
つまり /. と -> はペアで使うのが基本なのは当然だけど
Lisp 的な感覚として式の木構造を考えることが出来る [[]]も
無下に NG とするのもどうかも。。。。

あきらめ悪いっすかね

563 名前:132人目の素数さん [03/07/27 10:59]
Mathmatica 4を使っています。
Module[{i, j},
 ans = {};
 Do[
  Do[
   ans = Append[ans, {i, j}], {j, i + 1, 3}
  ], {i, 2}
 ]
 ans
]
を実行すると
{{Null, 2 Null}, {Null, 3 Null}, {2 Null, 3 Null}}
と変なNullという文字が引っ付いてくるのですが、
どうすれば、まともな答えが戻ってくるのでしょうか?


564 名前:132人目の素数さん mailto:sage [03/07/27 13:15]
>>562
エラーメッセージが出て、文字がそのままかえってくる
のと、
「何も言わずに、間違った答えがかえってくる」
のでは大違いだぞ。

全ては式である、ということの一例として[[]]がつかえることを
理解していることは必要だが、無闇に使うのは否定すべきだよ。

565 名前:132人目の素数さん mailto:sage [03/07/27 13:19]
>>563
   ]
   ans
->
   ];
   ans

566 名前:132人目の素数さん mailto:sage [03/07/27 14:01]
>>563
おれは>>534だから一応Tableによる解決を書いておく。
このほうがすくなくとも数倍速い。

UpperInds[n_Integer] := Flatten[Table[Table[{i,j},{j, i + 1, n}],{i,n - 1}],1]

567 名前:563 [03/07/27 14:45]
>>565
ありがとうございます。解決ししました。

>>566
ありがとうございます。
じつは、「内側のループのなかで、i,jを使った条件判定をやった結果、条件
を満たした時のみ、i,jに依存する要素をansに加えていく」というのがやりたい
ことなので、ちょっとそのままでは教えていただいたやりかたは使えないよう
です。


568 名前:132人目の素数さん mailto:sage [03/07/27 15:15]
>>567
それなら
UpperInd[n_Integer] := Module[
    {ConvertFunc = Sin[#[[1]] + #[[2]]] &, CondFunc = EvenQ[#[[2]]] &},
    ConvertFunc /@ Flatten[Table[
          Select[Table[{i, j}, {j, i + 1, n}], CondFunc], {i, n - 1}], 1]]
あるいは、
Table[If[..., ..., Gomi],...]としてあとでGomiを除くとか。

綺麗なのは、

ConvertFunc /@ Select[Flatten[Table[{i,j},{i,n},{j,n}],1], CondFunc]

(CondFuncのなかで#[[1]] < #[[2]]も判定)
みたいなやつかな。

569 名前:132人目の素数さん [03/07/29 01:55]
すみません、ものすごく初心者なんですけど教えてください。
非線形の最適化ってできるのですか?
お願いします。

570 名前:132人目の素数さん [03/07/29 11:57]
ウルフラムさん
セルオ−トマトンの原理で宇宙の起源を解明しようとしてるらしい
一体どうしちゃったんだろうか



571 名前:132人目の素数さん mailto:Sage[] [03/07/29 11:58]
なんかMathematica5.0ての海外では売ってるらしいんですけど。

572 名前:132人目の素数さん mailto:sage [03/07/29 22:13]
a[0]=0
a[1]=1
a[n+2]=a[a+1]+a[n]
みたいな漸化式を使ってa[100]とかを求めるにはどうすればいいですか?

573 名前:132人目の素数さん [03/07/29 22:39]
age

574 名前:132人目の素数さん mailto:sage [03/07/29 22:58]
>>572
a[0] = 0;
a[1] = 1;
a[n_] := a[n - 1] + a[n - 2]

575 名前:574 mailto:sage [03/07/29 23:00]
>>572
100は計算回数(2^100)が多すぎる求められんと思うぞ。
計算結果を覚えながらやれば別だが:
b[0] = 0;
b[1] = 1;
b[n_] := (b[n] = b[n - 1] + b[n - 2])
みたいに。

576 名前:132人目の素数さん [03/07/29 23:04]
レスありがとうございます!
早速やってみます

577 名前:132人目の素数さん [03/07/29 23:06]
出来ました!すごく感謝!

578 名前:132人目の素数さん [03/07/30 02:25]
x+y=1
xy=-1
というとても簡単な連立方程式を解かせたいのですが、
Solve[{x + y == 1, x - y == -1}, {x, y}]
とやっても上手くいきません。どうすればよいでしょうか?

579 名前:132人目の素数さん [03/07/30 02:26]
>>578
ミスったw
Solve[{x + y == 1, x y == -1}, {x, y}]
これでやって出来なかったです。お願いします。

580 名前:132人目の素数さん mailto:sage [03/07/30 10:56]
>>579
できるけど。



581 名前:132人目の素数さん [03/07/30 11:47]
買ったけど使い方がさっぱりわからない。友達に売ろ。

582 名前:132人目の素数さん [03/07/30 11:53]
ムカついたんでnyに流そっかな・・・

583 名前:132人目の素数さん [03/07/30 14:31]
>>575
b[1244]まではそれで出るんですけど、
b[1245]以降はHoldなんたらとか出て計算できないんですが
どうすればもっと大きい数まで表示出来るようになるでしょうか?

584 名前:math.1st ◆M9pCfogc9g [03/07/30 14:51]
Re:>583 再起呼び出しの関数は、ネストできる数に制限があることから、使わない方がよい。
使用メモリを増やして計算すると大きい数も表示できて、速い。

585 名前:132人目の素数さん [03/07/30 15:01]
>>584
ありがとうございます。
もうひとつ質問させてください。
n≦10の時
a[n_]:=a[n-1]+2
n>10の時
a[n_]:=a[n-1]+1
のように、範囲を指定したい時はどうすれば良いでしょうか?

586 名前:132人目の素数さん mailto:sage [03/07/30 21:34]
>>585
そんな問題Cでやった方が速い。2^32進数の作り方もついでに勉強。
まったく典型的「ユーザさん」だね。
あなた甲南大学とやらの学生ですか?
そういう丸投げ的利用法は、あとあとためにならないですよ。

587 名前:585 [03/07/30 23:42]
>>586
いえ、高校生です。

588 名前:132人目の素数さん mailto:sage [03/07/30 23:55]
高校生ならいいってもんでもないな。

589 名前:132人目の素数さん mailto:sage [03/07/31 01:49]
>>583
末尾再帰にすれば良い(演習問題)。
関数型言語では、関数は全て再帰で書く。

末尾再帰に書き換えないのであれば、
$RecursionLimit=3000
などと再帰の上限階数を増やす。

末尾再帰については自分で調べろ。

>>584
くだらんレスをするな。

>>585
例えば:
a[n_] /; n <= 10 := a[n - 1] + 2
a[n_] /; n > 10 := a[n - 1] + 1

>>586
丸なげ反対はわかるが、
> のように、範囲を指定したい時はどうすれば良いでしょうか?
これは言語仕様について聞いているんだろう。

590 名前:132人目の素数さん mailto:sage [03/07/31 23:36]
>>585
その後 FullForm で、出てくる式の構造を暇な時に見ると
将来、ひょっとしたら役に立つ可能性があるかもしれない。



591 名前:585 [03/08/01 02:39]
>>589
ありがとうございます。
末尾再帰ってのは調べてみたんですけどよく分かりませんでした…。
n = 2000; a = 0; b = 1; While[n >= 1,
If[n ≠ 1, a = a + b; n--, Print[b]; Break[]];
If[n ≠ 1, b = a + b; n--, Print[a]; Break[]]]; If[n == 0, Print[0]]
結局上のを書いてみたんですが改良点が有ったらご指摘お願いします。

f[n_]:=a = 0; b = 1; While[n >= 1,
If[n ≠ 1, a = a + b; n--, Print[b]; Break[]];
If[n ≠ 1, b = a + b; n--, Print[a]; Break[]]]; If[n == 0, Print[0]]
あと、上のようにやってf[2000]とかやっても0とか出ちゃうんですけど、
何が間違ってるのでしょうか…。

592 名前:132人目の素数さん mailto:sage [03/08/01 11:58]
高校生でこんなことをやってるのか。
凄いな

593 名前: mailto:sage [03/08/01 12:39]
え〜今までMathematicaなんて使ったことないのに、卒研で使えと言われまして・・・
さっぱりわからないんで教えていただけないでしょうか?

ワイブル分布において
平均Mean[dist] == 1と標準偏差StandardDeviation[dist] ==1/3の連立方程式を
αとβについてSolveで解こうとしたんですが、
『逆関数が使用されています.値は多価逆関数のため失われている可能性があります.』
と出て解けないんですよ。

これってどうすればいいのでしょうか?

594 名前:132人目の素数さん [03/08/01 16:39]
Play[Sin[700 t + 25 t Sin[350 t]], {t, 0, 4}]

595 名前:132人目の素数さん mailto:sage [03/08/01 16:53]
>>593
解けないんじゃなくて、そのメッセージの後に代表値は出てるよな?(w

596 名前:132人目の素数さん mailto:sage [03/08/01 17:07]
Mathematicaとは関係ない話なんだけどwolfram reserchの日本語の
トップページ(www.wolfram.co.jp/)ってさ、リロードするたびに違う
種類の画像とキャッチコピーが表示されるじゃん。キャッチコピーは
「世界の計算方法」とか「数学、科学、工学、教育における革新的言語」
とか色々あるんだけど。あれの中の一つに「技術計算の未来を定義」
ってのがあったのね。それを読んだときに「未来を予測する最良の方法
は、それを発明してしまうことだ」っていうAlan C. Kayの言葉を思い出し
て、「ああそうか、数学で何か発明するってはまさしく何か定義すること
だな」と思って少し感慨を覚えたんだよ。どうでもいい話だけど。

ってか英語の方のトップページ見たらMathematica5って書いてあるじゃん!
6/23に出たのか。全く知らなかった。

597 名前:132人目の素数さん [03/08/01 17:31]
例えば、
p1=Plot[Sin[x],{x,-10,10}];
というように最後にセミコロン「;」を付けてもグラフが表示されてしまうのですが
これを表示させないようにするにはどうすればよいのですか?


598 名前:ビッグバン宇宙論は完全に間違いでした!!!!! [03/08/01 18:39]
科学者よ、恥を知れ!
ビッグバン宇宙論は完全に間違いだった!
科学の原則を無視した、デタラメのインチキ理論だったのだ。
そして、そのビッグバン宇宙論の世界的な浸透は
アメリカ、ユダヤ・キリスト教勢力による世界支配のための思想的な戦略なのだ!
また、ビッグバン宇宙論の思想によって戦争が起こり、
貧富の差がひらき、終末的な絶望感が世界に蔓延しているのだ。
ビッグバン宇宙論は世界の平和を揺るがす、悪の元凶となっているのだ。
ビッグバン宇宙論とは、
「宇宙は『無』からビッグバン(大爆発)によって誕生した」という理論である。
この理論は、ユダヤ・キリスト教の創造神話(神が天地を創造した)そのものである。
ビッグバン宇宙論の実態は、科学理論ではなく宗教思想なのである。
『無』は科学的に証明できるものではなく、
そして、『無からの誕生』も科学では証明できるものではないのだ。
ビッグバン宇宙論が科学の正統であるという思想を、世界中の人々に
浸透させる戦略が成功したことにより、ユダヤ・キリスト教勢力の
世界における優位性が確立されていったのだ。(20世紀に)
そして、その思想的支配の最大の例が、アメリカやイギリスによる
イラク戦争なのだ。
ビッグバン宇宙論の浸透により、世界中に終末思想(世界の終わり)が蔓延してしまっている。
そのことにより、自己中心的、せつな的、短絡的な考え方が社会に広がっている。
科学的に間違っているビッグバン宇宙論から脱却しなければならない。
そして、宇宙は無限だということを理解しなければならない。
人間は本当の宇宙観、世界観を構築し、
新しい時代に進んでいかなければならないのだ。
ビッグバン宇宙論が世界を支配している限り、平和な世界にはならないのだ。
そのことを科学者は重く受けとめるべきである。
平和な世界を!!!!!!!!!!!!!!!!!!!!!!!



599 名前:132人目の素数さん [03/08/01 18:49]
           ,-rヽ、         __,.- 、
           /  )ァヘ        /     }  
           / ,ィ ,.ニィ         /´ヽo‐´
       /_〈 レ'´∠-‐‐- 、__ /   l
       ト<,__,>  _ ,,,,, _     </   |
     ( \_ 、__∠-、‐、‐ヽ   、 .l l   /
     〉/ _.ィ‐'´ヽト、Alヽト、ヽlヽl   |
      イァ ノ.イ'"_     ;==、 ヽ  l    L._
     ,イ |  l /lハ     }Viゝ } /|   l:.:.ヽ
   /.:L.ヽハ ド上!     ゙‐' ノ ト、    レ' {
   〈-‐'´.-'´ >ゝ" ` _ ....、´ ´7/、 `ー'´ .イ
   ヽ‐'´,-/ィヘ、 ヽ _ノ  ,彳 `ー-‐'´ /
    `´l   ノィヘィ>、__,.. ‐'´ {  l.     /
        l  ! /〈__.L..、ノ __.-‐'´|  !     〈
.        l ! >'´-、イ⌒'ー-‐'´  、  /
       | /_,ィ´i l. . : : : : . . ,'  `ー./
         〉、: : :.l _,イ: : : : : : : : !    / 
      /. :! :  ´    : : : : : :/   /  
       l: : :                / 
      /. : _. -‐- ._   . : : : :.〈
    /_,.ィ´     ` ー-、;_: : : :|
      \::ノ   j __. -‐ ‐- エ>
      /‐ '' "__,... -‐‐rー、-、_|  
    /-‐ァ' ´/  |  l  ヽ  ` 、
   ./ /   /  l   !  `、  ヽ、

600 名前:132人目の素数さん mailto:sage [03/08/01 19:29]
おい、そのAAはロリスレに貼れ



601 名前:ぼるじょあ ◆yBEncckFOU mailto:(^^) [03/08/02 03:01]
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ

602 名前:132人目の素数さん mailto:sage [03/08/02 03:41]
>>591
>  n = 2000; a = 0; b = 1; While[n >= 1,
>  ...
論外なのでコメントできん。一冊以上Mathematicaの本を読め。

末尾再帰を用いた解答
f[n_] := f[n, 0, 1];
f[0, r1_ , r2_ ] := r1;
f[n_, r1_, r2_] := f[n - 1, r2, r1 + r2];

>  f[n_]:=a = 0; b = 1; While[n >= 1,
a = 0;のセミコロンで文が切れている。
f[n_] : = a
b = 1;
と入力しているのと同じだ。

603 名前:132人目の素数さん mailto:sage [03/08/04 00:48]
>>602
論外ですかw
そうゆう本高そうで…。今度学校の図書館で詠んでみます。
ありがとうございました。

604 名前:132人目の素数さん [03/08/04 08:23]
597に応えてあげて

605 名前:132人目の素数さん mailto:sage [03/08/04 20:18]
>>604=>>597

606 名前:132人目の素数さん mailto:sage [03/08/04 23:22]
>595
日本国内向けに日本語文書作業中。
もっとも買う人がいないから強制バンドル
価格Up 中。

日本は非英語で高度な技術内容が学べ得るけど
その分仲介業者が入る余地が多くなってしまった。。。。

607 名前:132人目の素数さん mailto:??? [03/08/05 23:48]
Ver.5使ってます。
起動直後にガイドが出るくらいで
見た目はそんなに変わってない。


608 名前:132人目の素数さん [03/08/05 23:49]
★おまんこナビ登場!!★日本の美しきオマンコ★
endou.kir.jp/marimo/link.html

609 名前:132人目の素数さん [03/08/05 23:50]
あなたの近所のあの娘が出てるかも
いつもすまして歩いてるあの娘が
乱れまくり!!
www.j-girlmovie.com/

610 名前:132人目の素数さん mailto:sage [03/08/06 15:32]
Sin[a°]=1/2なるaを求めるにはどうすればよいでしょうか?
Solve[Sin[a°]==1/2]では求められませんでした。



611 名前:132人目の素数さん mailto:sage [03/08/07 00:11]
Solve[Sin[a] == 1/2, a]

612 名前:132人目の素数さん mailto:sage [03/08/07 14:32]
>>611
違う。

613 名前:132人目の素数さん mailto:sage [03/08/07 14:59]
>>612
Solve[Sin[a Degree] == 1/2, a]

Solve[Sin[a] == 1/2, a]
と同じ程度に、求めることができているので、
質問者が何を求めているのかよくわからない。

Solve[Sin[a Degree] == 1/2, a] // N
ってのが欲しいのか。

614 名前:132人目の素数さん mailto:sage [03/08/07 15:25]
>>613
スペースが必要だったのか。ありがとう。

615 名前:132人目の素数さん mailto:sage [03/08/09 12:52]
>>614
そういう誤解か。
a\[Degree]はそれ自体がシンボルだから、
Solve[Sin[a\[Degree]] == 1/2, a\[Degree]]
はできるが、aは求められない。

スペース(かけ算)が見た目に嫌なら、
a\[InvisibleTimes]\[Degree]とすればよし。

616 名前:132人目の素数さん mailto:sage [03/08/09 15:56]
>>597
だれも書かないな。
$DisplayFunction = Identity

617 名前:132人目の素数さん [03/08/12 22:43]
>616
正確にいきましょう。

p1 = ListPlot[Table[{i, i*Random[]}, {i, 1, 8}],
PlotStyle -> RGBColor[1, 0, 0], DisplayFunction -> Identity];
p2 = Plot[Exp[x], {x, -2, 2},
PlotStyle -> RGBColor[0, 0, 1], DisplayFunction -> Identity];
Show[{p1, p2}, DisplayFunction -> $DisplayFunction];

618 名前:132人目の素数さん mailto:sage [03/08/13 00:54]
>>617
それのどこが正確なんだ?
PlotStyleなんて何の関係もないし。
# 意味がわかってないままコピペしているようにしかみえないのだが。

で、これのどこが正確でないんだ?
$DisplayFunction = Identity;
Plot[Sin[x],{x,0,1}];
# オプションの方がいい場合「も」あるがな。

619 名前:132人目の素数さん mailto:sage [03/08/13 01:56]
>>617-618
要はオプションを関数の中で指定しているかグローバルに指定しているかの違いだろ。

620 名前:132人目の素数さん mailto:sage [03/08/13 03:57]
>>619
違う。
$DisplayFunction は DisplayFunctionというオプションのデフォルト設定
を与えるものであって、オプションそのものではない。
オプションを設定することと、
(オプションが省略された時の)デフォルトを変更することは、厳密には別のことだ。

オプションを関数の外で設定するというのは
SetOptions[Plot, DisplayFunction -> Identity]
だ。



621 名前:山崎 渉 mailto:(^^) [03/08/15 18:32]
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

622 名前:132人目の素数さん mailto:??? [03/08/18 18:59]
おーい、Ver5持ってる奴
x^100-1==0
を解いて、根の絶対値を調べてくれ。
1にならないから。


623 名前:tebe [03/08/18 19:06]
半年間もかけてMathematicaの使い方を学ぶという
非常にエグイ授業を大学でやったよ。
Mathematicaって機能ありすぎて、僕みたいな素人
には宝の持ち腐れって感じだな

624 名前:132人目の素数さん [03/08/18 19:11]
「今私のオッパイ見てたでしょう。」ってそりゃ見ますって。
これだけの立派なオッパイが目の前にあったら。
淫乱女教師がフェラ、パイズリで同僚の先生を責めまくります。
挿入部のアップも豊富なのでオマンコもモロ見えですよ。
無料動画をどうぞ
www.exciteroom.com/


625 名前:132人目の素数さん [03/08/18 19:19]
Mathematicaの有名なバグ

Integrate[1/x^2, {x, -1, 1}]

古いバージョンだと2と評価してくれるんですが
新しいバージョンだと∞になってしまいます。
Ver5だとどうなんでしょうか?

626 名前:132人目の素数さん mailto:sage [03/08/18 21:50]
>>625
はぁ?
バグってるのはあなたの頭では?

627 名前:132人目の素数さん mailto:sage [03/08/20 01:54]
 1        1
∫(1/x^2)dx=-1/x|=-1/1-(-1/(-1))=−2
 -1       -1

じゃないの?

628 名前:132人目の素数さん [03/08/20 01:56]
>>627
ずれた
 1          1
∫(1/x^2)dx=-1/x|=-1/1-(-1/(-1))=−2
 -1         -1

じゃないの?


629 名前:132人目の素数さん [03/08/20 01:59]
>>628
1/x^2>0だから積分値は正だろ?

630 名前:_ mailto:sage [03/08/20 02:03]
homepage.mac.com/yamazaki8



631 名前:132人目の素数さん [03/08/20 02:06]
>>625-629
x=0で発散しているから∞だろ

632 名前:132人目の素数さん mailto:??? [03/08/20 08:37]
625がまぬけだったということでよろしいでつか


633 名前:132人目の素数さん [03/08/20 10:12]
>>632
否、これは確かに古いバージョンでは2ではないが−2と評価しているぞ。
いまのバージョンだと∞に修正されてはいるが。

634 名前:supermathmania ◆ViEu89Okng [03/08/20 10:50]
発散積分の有限部分は確かに-2になる。
Integrate関数は超関数積分なども一部サポートしている。
これとは関係ないが、主値積分もオプション指定でできる。

ついでに、Integrate[Exp[1/(1-x^2)],{x,-1,1}]と
NIntegrate[Exp[1/(1-x^2)],{x,-1,1}]の結果を報告していただきたい。
期待しないで待っているぞ。

635 名前:132人目の素数さん [03/08/20 18:05]
>>625は古いバージョンと新しいバージョンの挙動の違いを言ってるだけだろ
積分値が正しい間違ってるの話をしているわけではないと思われ



636 名前:132人目の素数さん [03/08/20 19:54]
>>634
NIntegrate[Exp[1/(1-x^2)],{x,-0.998,0.998}]=3.88057*10^103でつた。
Integrate[Exp[1/(1-x^2)],{x,-1,1}]は、答えが帰ってきません(;_;)
mathematica 4.2 for Linux-PPC

637 名前:132人目の素数さん mailto:??? [03/08/20 20:50]
ちなみにMapleの結果

int(exp(1/(1-x^2)),x);

/infinity \
| ----- 2 |
| \ hypergeom([1/2, _k1], [3/2], x )|
x | ) --------------------------------|
| / GAMMA(1 + _k1) |
| ----- |
\_k1 = 0 /



638 名前:132人目の素数さん [03/08/21 01:41]
オクで割れマセマティカを5000円で売ってるやつがいる。
タイーホされてほしい。

639 名前:132人目の素数さん mailto:sage [03/08/21 01:55]
>>638
通報すれ

640 名前:132人目の素数さん [03/08/21 02:06]
>>637
そんなの超幾何関数使って元の積分を表現しただけじゃん。



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]
このスレ、人を罵倒するやつが多いな。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<264KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef