src/ij2r.cpp
int Pmn(int Nel, int i, int j)
{

  int Pmm=0;
  int add=0;

  if (i>=j) //n=i,m=j
    {
      Pmm=(2*Nel-j)*j;
      add=2*(i-j);
    }
  else // n=j,m=i
    {
      Pmm=(2*Nel-i)*i;
      add=2*(j-i)-1;
    }

  return(Pmm+add);
}
////////////////
// Returns position of element aij of a Nel x Nel matrix on
// a vector arranged as
// vec: a00 a01 a10 a02 a20.. a11 a12 a21 ...
// pos:  0   1   2   3   4 ..  
//
Returns position of element aij of a Nel x Nel matrix on
a vector arranged as
vec: a00 a01 a10 a02 a20..
Returns position of element aij of a Nel x Nel matrix on a vector arranged as vec : a00 a01 a10 a02 a20 ..
int Pmn(int Nel, int i, int j)
{
  int Pmm=0;
  int add=0;
  if (i>=j) 
    {
      Pmm=(2*Nel-j)*j;
      add=2*(i-j);
    }
  else 
    {
      Pmm=(2*Nel-i)*i;
      add=2*(j-i)-1;
    }
  return(Pmm+add);
}
int Pmn ( int Nel , int i , int j ) { int Pmm = 0 ; int add = 0 ; if ( i >= j ) { Pmm = ( 2 * Nel - j ) * j ; add = 2 * ( i - j ) ; } else { Pmm = ( 2 * Nel - i ) * i ; add = 2 * ( j - i ) - 1 ; } return ( Pmm + add ) ; }
Returns position of element aij of a Nel x Nel matrix on
a vector arranged as
vec: a00 a01 a10 a02 a20.. a11 a12 a21 ...
pos:  0   1   2   3   4 ..
Returns position of element aij of a Nel x Nel matrix on a vector arranged as vec : a00 a01 a10 a02 a20 .. a11 a12 a21 ... pos : 0 1 2 3 4 ..
//n=i,m=j // n=j,m=i