aris
1
Issue #6967 has been reported by 5.5 (5 5).
Bug #6967: Vector#inner_product は複素数ベクトルのとき不適切
Author: 5.5 (5 5)
Status: Open
Priority: Low
Assignee:
Category: lib
Target version: 1.9.3
ruby -v: ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
#6966 に関連して,Vector#inner_product は成分の単なる積和ですが,複素数ベクトル v については
v.inner_product(v) が非負性を破るので,内積の定義に当てはまりません。
複素数ベクトルでは内積といえばエルミート内積(<u,v> = Σ u_i v_i*)なので(* は複素共役),inner_product
の定義を
p = 0
each2(v) {|v1, v2|
p += v1 * v2.conj
}
p
のようにするか,あるいは self や引数が実でないときは例外を出すことにし,inner_product とは別に
hermitian_inner_product を導入しては如何でしょうか。
Issue #6967 has been updated by marcandre (Marc-Andre L.).
Assignee set to marcandre (Marc-Andre L.)
Bug #6967: Vector#inner_product は複素数ベクトルのとき不適切
Author: 5.5 (5 5)
Status: Open
Priority: Low
Assignee: marcandre (Marc-Andre L.)
Category: lib
Target version: 1.9.3
ruby -v: ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
#6966 に関連して,Vector#inner_product は成分の単なる積和ですが,複素数ベクトル v については
v.inner_product(v) が非負性を破るので,内積の定義に当てはまりません。
複素数ベクトルでは内積といえばエルミート内積(<u,v> = Σ u_i v_i*)なので(* は複素共役),inner_product
の定義を
p = 0
each2(v) {|v1, v2|
p += v1 * v2.conj
}
p
のようにするか,あるいは self や引数が実でないときは例外を出すことにし,inner_product とは別に
hermitian_inner_product を導入しては如何でしょうか。
Issue #6967 has been updated by usa (Usaku NAKAMURA).
Status changed from Open to Assigned
Bug #6967: Vector#inner_product は複素数ベクトルのとき不適切
Author: 5.5 (5 5)
Status: Assigned
Priority: Low
Assignee: marcandre (Marc-Andre L.)
Category: lib
Target version: 1.9.3
ruby -v: ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
#6966 に関連して,Vector#inner_product は成分の単なる積和ですが,複素数ベクトル v については
v.inner_product(v) が非負性を破るので,内積の定義に当てはまりません。
複素数ベクトルでは内積といえばエルミート内積(<u,v> = Σ u_i v_i*)なので(* は複素共役),inner_product
の定義を
p = 0
each2(v) {|v1, v2|
p += v1 * v2.conj
}
p
のようにするか,あるいは self や引数が実でないときは例外を出すことにし,inner_product とは別に
hermitian_inner_product を導入しては如何でしょうか。
Issue #6967 has been updated by marcandre (Marc-Andre L.).
Status changed from Assigned to Closed
% Done changed from 0 to 100
Fixed with r38983 (not sure why redmine didn’t link the commit & close
the issue).
ありがとうございます。
Bug #6967: Vector#inner_product は複素数ベクトルのとき不適切
Author: 5.5 (5 5)
Status: Closed
Priority: Low
Assignee: marcandre (Marc-Andre L.)
Category: lib
Target version: 1.9.3
ruby -v: ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
#6966 に関連して,Vector#inner_product は成分の単なる積和ですが,複素数ベクトル v については
v.inner_product(v) が非負性を破るので,内積の定義に当てはまりません。
複素数ベクトルでは内積といえばエルミート内積(<u,v> = Σ u_i v_i*)なので(* は複素共役),inner_product
の定義を
p = 0
each2(v) {|v1, v2|
p += v1 * v2.conj
}
p
のようにするか,あるいは self や引数が実でないときは例外を出すことにし,inner_product とは別に
hermitian_inner_product を導入しては如何でしょうか。