Menu

SVN archive Commit Log


Commit Date  
[r24301] by tlinnet

Got rid of the inner evolution of the magnetization.

If the looping over the number of CPMG elements is given by the index l, and the initial magnetization has
been formed, then the number of times for propagation of magnetization is l = power_si_mi_di-1.
If the magnetization matrix "Mint" has the index Mint_(i,k) and the evolution matrix has the index Evol_(k,j), i=1, k=7, j=7
then the dot product is given by: Sum_{k=1}^{k} Mint_(1,k) * Evol_(k,j) = D_(1, j).
The numpy einsum formula for this would be: einsum('ik,kj -> ij', Mint, Evol)

Following evolution will be: Sum_{k=1}^{k} D_(1, j) * Evol_(k,j) = Mint_(1,k) * Evol_(k,j) * Evol_(k,j).
We can then realize, that the evolution matrix can be raised to the power l. Evol_P = Evol**l.
It will then be: einsum('ik,kj -> ij', Mint, Evol_P)

- Get which power to raise the matrix to.
l = power_si_mi_di-1

- Raise the square evolution matrix to the power l.
evolution_matrix_T_pwer_i = matrix_power(evolution_matrix_T_i, l)

Mint_T_i = dot(Mint_T_i, evolution_matrix_T_pwer_i)
or
Mint_T_i = einsum('ik,kj -> ij', Mint_T_i, evolution_matrix_T_pwer_i)

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:48 Tree
[r24300] by tlinnet

Speeded up ns cpmg 2site 3d, by preforming the magnetisation.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:46 Tree
[r24299] by tlinnet

Lowered the looping in NS CPMG 2site 3D, by preforming the inital dot product.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:45 Tree
[r24298] by tlinnet

Swapped the dot product position, when propagating the magnetisation in model NS CPMG 2site 3D.

This it to try to align to same method as in NS R1rho 2site.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:43 Tree
[r24297] by tlinnet

For model NS CPMG 2site 3d, the M0 matrix was preformed for higher dimensionality in init of target function.

The transposes/rolled axis versions was also initiated.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:42 Tree
[r24296] by tlinnet

Removed un-used import of rollaxis in ns r1rho 2site.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:40 Tree
[r24295] by tlinnet

Speeded up the code of NS r1rho 3site.

This was essential done to numpy einsum, and doing the dot operations in multiple dimensions.
It was though necessary to realize, that to do the proper dot product operations, the outer two
axis if M0 should be swapped, by rolling the outer axis one back.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:38 Tree
[r24294] by tlinnet

Speeded up the code of NS r1rho 2site.

This was essential done to numpy einsum, and doing the dot operations in multiple dimensions.
It was though necessary to realize, that to do the proper dot product operations, the outer two
axis if M0 should be swapped, by rolling the outer axis one back.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:36 Tree
[r24293] by tlinnet

Shortened the code dramatically for NS R1rho 2site.

It is possible to calculate all in "one" go, after having the trasposer/rolled-back M0 magnetization.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:34 Tree
[r24292] by tlinnet

Inserted an extremely interesting development in NS R1rho 2site.

If one do a transpose of M0, one can calculate all the matrix evolutions in the start via numpy einsum.
Since M0 is in higher a dimensions, one should not do a numpy transpose, but swap/roll the outer M0 6x1 axis.

Task #7807 (https://gna.org/task/index.php?7807): Speed-up of dispersion models for Clustered analysis.

2014-06-25 00:14:32 Tree
Older >
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.