Arrayクラスの拡張でに行列と転置行列の積をやる関数を作った。
class Array
def times_t
new_matrix = Array.new
for j in 0...self.length do
new_matrix[j] = Array.new
for k in 0...self.length do
new_matrix[j][k] = 0
for i in 0...self[j].length do
new_matrix[j][k] += self[j][i] * self[k][i]
end
end
end
return new_matrix
end
def t_times
new_matrix = Array.new
for j in 0...self[0].length do
new_matrix[j] = Array.new
for k in 0...self[j].length do
new_matrix[j][k] = 0
for i in 0...self.length do
new_matrix[j][k] += self[i][j] * self[i][k]
end
end
end
return new_matrix
end
end
times_tが

を、t_timesが

を計算している。
最終更新:2008年06月14日 01:21