[#39325] File.fnmatch の改良について — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
はじめまして、山本です。
18 messages
2004/03/05
[#39326] Re: File.fnmatch の改良について
— "U.Nakamura" <usa@...>
2004/03/05
こんにちは、なかむら(う)です。
[#39329] Re: File.fnmatch の改良について
— "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
2004/03/05
山本です。
[#39331] Re: File.fnmatch の改良について
— "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
2004/03/05
山本です。
[#39335] Re: File.fnmatch の改良について
— "U.Nakamura" <usa@...>
2004/03/05
こんにちは、なかむら(う)です。
[#39347] Windows上でRuby+MySQL — Dan Yamamoto <dango@...>
団と申します。
9 messages
2004/03/09
[#39348] Re: Windows上でRuby+MySQL
— とみたまさひろ <tommy@...>
2004/03/09
とみたです。
[#39349] Re: Windows上でRuby+MySQL
— Yamamoto Dan <dango@...>
2004/03/09
団です。
[#39352] 1.8 の irb/completion.rb の挙動の違い — Wataru Gotoh <gotow@...>
後藤@北の方と申します。
1 message
2004/03/09
[#39367] [ANN] Nora 0.0.20040310 released — MoonWolf <moonwolf@...>
MoonWolfです。
1 message
2004/03/10
[#39383] Re: win32ole でexcel が終了しない — g-1@...5.so-net.ne.jp
中です。
7 messages
2004/03/18
[#39401] rubyの関数定義について — "yokoyama" <yokoyama@...0038.net>
はじめましてyokoyamaと申します。
11 messages
2004/03/21
[#39403] Re: rubyの関数定義について
— rubikitch <rubikitch@...>
2004/03/21
From: "yokoyama" <yokoyama@mf.0038.net>
[#39423] 例えば "26" を "&" に変換したい(sub, hex, pack) — 若宮 修司 <gba02077@...>
皆さん、初めまして。
5 messages
2004/03/23
[#39427] require 'cal'をexe化すると終了時にアプリケーションエラー — katata@...
どうもTa3と申します。
4 messages
2004/03/23
[#39429] trial version of Ruby/Tk — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
18 messages
2004/03/23
[#39454] Re: trial version of Ruby/Tk
— "Shirai,Kaoru" <shirai@...>
2004/03/31
白井です。
[#39460] Re: trial version of Ruby/Tk
— Hidetoshi NAGAI <nagai@...>
2004/04/01
永井@知能.九工大です.
[#39465] Re: trial version of Ruby/Tk
— "Shirai,Kaoru" <shirai@...>
2004/04/01
白井です。
[#39466] Re: trial version of Ruby/Tk
— Hidetoshi NAGAI <nagai@...>
2004/04/01
永井@知能.九工大です.
[#39467] Re: trial version of Ruby/Tk
— Hidetoshi NAGAI <nagai@...>
2004/04/01
永井@知能.九工大です.
[#39469] Re: trial version of Ruby/Tk
— "Shirai,Kaoru" <shirai@...>
2004/04/01
白井です。
[#39474] Re: trial version of Ruby/Tk
— Hidetoshi NAGAI <nagai@...>
2004/04/02
永井@知能.九工大です.
[#39476] Re: trial version of Ruby/Tk
— "Shirai,Kaoru" <shirai@...>
2004/04/02
白井です。
[#39482] Re: trial version of Ruby/Tk
— Hidetoshi NAGAI <nagai@...>
2004/04/02
永井@知能.九工大です.
[#39431] 「RPGツクール」の最新版にRubyが使われているそうですね — cyross@...
お久しぶりです。
6 messages
2004/03/23
[#39440] Amritaで複数行(<tr>)を繰り返したい — ITO Asuka <asuka@...>
伊藤と申します。
5 messages
2004/03/25
[#39444] gethostbynameでホスト名が引けない — 堀川 久 <vzw00011@...>
こんにちは。
11 messages
2004/03/28
[#39446] Re: gethostbynameでホスト名が引けない
— matz@... (Yukihiro Matsumoto)
2004/03/28
まつもと ゆきひろです
[#39450] Re: gethostbynameでホスト名が引けない
— 堀川 久 <vzw00011@...>
2004/03/30
こんにちは。
[#39451] Re: gethostbynameでホスト名が引けない
— matz@... (Yukihiro Matsumoto)
2004/03/30
まつもと ゆきひろです
[#39448] [ANN] Rubyお花見@井の頭公園 — TAKAHASHI Masayoshi <maki@...>
高橋征義です。お花見のご案内です。
1 message
2004/03/29
[#39453] Re: int/int in Ruby2? — Masaaki Sakano <mas@...>
坂野 正明です。
36 messages
2004/03/31
[#39455] Re: int/int in Ruby2?
— NISHIMATSU Takeshi <t-nissie@...>
2004/03/31
西松と申します.
[#39470] Re: int/int in Ruby2?
— Masaaki Sakano <mas@...>
2004/04/01
坂野 正明です。
[#39473] Re: int/int in Ruby2?
— matz@... (Yukihiro Matsumoto)
2004/04/01
まつもと ゆきひろです
[#39484] Re: int/int in Ruby2?
— Masaaki Sakano <mas@...>
2004/04/03
坂野 正明です。
[#39514] Re: int/int in Ruby2?
— OOTANI TAKASHI <otn@...5.so-net.ne.jp>
2004/04/08
大谷と申します。
[#39528] Re: int/int in Ruby2?
— "T Akutsu" <locrian@...>
2004/04/09
あくつです。なんかわくわくしてきだぞ。(^^;)
[#39529] Re: int/int in Ruby2?
— 小西 弘将 <konishih@...6.so-net.ne.jp>
2004/04/09
小西 弘将です。
[ruby-list:39317] Re: 固有値、固有ベクトルの計算
From:
Shin-ichiro HARA <sinara@...>
Date:
2004-03-01 17:39:13 UTC
List:
ruby-list #39317
原です。
In [ruby-list:39288]
>佐藤と申します。
>
>行列の固有値、固有ベクトルを求めたいと
>思っています。
>
>webで調べてみた結果、下記の事がわかりましたが、
>調べもれ、事実誤認、その他の方法、
>実際に行列の計算をやっている人からの意見、ヒント
>などがありましたら教えてください。
多分佐藤さんの求めるものとは違うと思いますが,私の作った
ライブラリ algebra を紹介します。
[ruby-list:39310] の例で計算すると,
--------------------
require "algebra"
M = SquareMatrix(Rational, 3)
a = M[[1, 0, -1],
[1, 2, 1],
[2, 2, 3]]
puts "A = "; a.display; puts
e = a.diagonalize
puts "特性多項式: #{e.chpoly} => #{e.facts}"; puts
puts "添加元:"
e.roots.each do |po, rs|
puts "#{rs.join(', ')} : roots of #{po} == 0"
end; puts
puts "固有空間: "
e.evalues.uniq.each do |ev|
puts "W_{#{ev}} = <#{e.espaces[ev].join(', ')}>"
end; puts
puts "変換行列:"
puts "P ="
e.tmatrix.display; puts
puts "P^-1 * A * P = ";
(e.tmatrix.inverse * a * e.tmatrix).display; puts
--------------------
で,結果は
--------------------
A =
1, 0, -1
1, 2, 1
2, 2, 3
特性多項式: t^3 - 6t^2 + 11t - 6 => (t - 1)(t - 2)(t - 3)
添加元:
固有空間:
W_{1} = <[-1, 1, 0]>
W_{2} = <[-1, 1/2, 1]>
W_{3} = <[-1/2, 1/2, 1]>
変換行列:
P =
-1, -1, -1/2
1, 1/2, 1/2
0, 1, 1
P^-1 * A * P =
1, 0, 0
0, 2, 0
0, 0, 3
--------------------
となります。
この algebra というのは,ピュア Ruby で書かれていて,代数的な
処理を目的としています(浮動小数点小数は念頭に置かれてない)。
従って得られる結果は厳密解で,理論的には何次の行列もOKな(対
角化不能の場合は例外が挙がる)のですが,著しく処理に時間がかか
る場合があります。特性多項式が因数分解できないなら,3次行列ぐ
らいが限界でしょうか。
例えば行列を
1, 0, -1
1, 1, 1
2, 2, 3
にすると,
--------------------
A =
1, 0, -1
1, 1, 1
2, 2, 3
特性多項式: t^3 - 5t^2 + 7t - 1 => t^3 - 5t^2 + 7t - 1
添加元:
a, b, -b - a + 5 : roots of t^3 - 5t^2 + 7t - 1 == 0
固有空間:
W_{a} = <[1/2a^2 - 2a + 3/2, -1/2a^2 + 5/2a - 3, 1]>
W_{b} = <[(-1/2a + 1/2)b - 1/2a^2 + 5/2a - 2, 1/2ab + 1/2a^2 - 5/2a + 1/2, 1]>
W_{-b - a + 5} = <[(1/2a - 1/2)b - 1/2a + 1/2, -1/2ab + 1/2, 1]>
変換行列:
P =
1/2a^2 - 2a + 3/2, (-1/2a + 1/2)b - 1/2a^2 + 5/2a - 2, (1/2a - 1/2)b - 1/2a + 1/2
-1/2a^2 + 5/2a - 3, 1/2ab + 1/2a^2 - 5/2a + 1/2, -1/2ab + 1/2
1, 1, 1
P^-1 * A * P =
a, 0, 0
0, b, 0
0, 0, -b - a + 5
------------------------------
となって,無理数 a, b が現れます。そして a, b の大きさの
計量は全くしません。
というわけで,このライブラリは今のところ線形代数の試験問題を
自動生成させてやろうとか,よこしまなな用途にしかつかえません。
(^^;
In [ruby-list:39303]
> # 学校の授業では、学生にプログラムを書かせるより(車輪の再生産)
> # lapackなどのライブラリの存在と使い方を教えたほうが
> # 有意義だとつねづね思っています。
線形代数の授業としては,プログラムを書かせることは,自分がア
ルゴリズムを理解しているか確かめるために非常に有益だと思いま
すね。(実際にそんな時間はないけど。)教えている先生だって掃
き出し法が何重のループになるか答えられる人は少ないでしょう。
技術的なテーマの授業だとまた別でしょうが。
ちょっと大きめの行列を数値的に対角化したいなんて場合,手軽に
使えるライブラリは私もほしいですね。田中さんのを試してみよう。