1

R では、与えられたベクトル G

> G <- c(-0.44852453+0i, -0.40701659+0i, -0.65381971+0i, -0.37545331+0i, -0.05763717+0i, -0.24778175+0i)

次のように、G のすべてのエントリの比率を形成できます。

> B<-outer(G, G, FUN='/')
> 
> B
             [,1]         [,2]          [,3]         [,4]         [,5]         [,6]
[1,] 1.0000000+0i 1.1019810+0i 0.68600644+0i 1.1946213+0i  7.781862+0i 1.8101597+0i
[2,] 0.9074567+0i 1.0000000+0i 0.62252114+0i 1.0840671+0i  7.061703+0i 1.6426415+0i
[3,] 1.4577123+0i 1.6063712+0i 1.00000000+0i 1.7414142+0i 11.343716+0i 2.6386920+0i
[4,] 0.8370853+0i 0.9224521+0i 0.57424593+0i 1.0000000+0i  6.514083+0i 1.5152581+0i
[5,] 0.1285039+0i 0.1416089+0i 0.08815453+0i 0.1535135+0i  1.000000+0i 0.2326127+0i
[6,] 0.5524375+0i 0.6087756+0i 0.37897565+0i 0.6599536+0i  4.298992+0i 1.0000000+0i

eigen3でこれを行う簡単な方法はありますか?

だから私はC ++でできる

std::cout << vec1 * vec1.transpose() << std::endl;

しかし、私はできません

std::cout << vec1 / vec1.transpose() << std::endl;

a / b = a * (1 / b) なので、これを行う簡単な方法があると思うでしょう。

4

1 に答える 1