/*
 * Calculate floating point wavevectors, using current boundary.
 */
 void StructureFactor::makeWaveVectors() 
 {
    Boundary* boundaryPtr = &system().boundary();
    Vector  dWave;
    int  i, j;
    for (i = 0; i < nWave_; ++i) {
       waveVectors_[i] = Vector::Zero;
       for (j = 0; j < Dimension; ++j) {
          dWave  = boundaryPtr->reciprocalBasisVector(j);
          dWave *= waveIntVectors_[i][j];
          waveVectors_[i] += dWave;
       }
    }
 }
Example #2
0
   /**
   * Calculate floating point wavevectors.
   */
   void AsymmSF::makeWaveVectors() 
   {
      Vector    dWave;
      Boundary* boundaryPtr = &simulation().boundary();
      int       i, j;

      // Calculate wavevectors
      for (i = 0; i < nWave_; ++i) {
         waveVectors_[i] = Vector::Zero;
         for (j = 0; j < Dimension; ++j) {
            dWave  = boundaryPtr->reciprocalBasisVector(j);
            dWave *= waveIntVectors_[i][j];
            waveVectors_[i] += dWave;
         }
      }
   }
   /**
   * Calculate floating point wavevectors.
   */
   void CompositionProfile::makeWaveVectors()
   {
      Vector    dWave;
      Boundary* boundaryPtr = &system().boundary();
      int       i, j;

      // Calculate wavevectors
      for (i = 0; i < nDirection_; ++i) {
         waveVectors_[i] = Vector::Zero;
         for (j = 0; j < Dimension; ++j) {
            dWave  = boundaryPtr->reciprocalBasisVector(j);
            dWave *= intVectors_[i][j];
            waveVectors_[i] += dWave;
            //std::cout << waveVectors_[i] << std::endl;
         }
      }
   }
/**
* Calculate floating point wavevectors.
*/
void IntraStructureFactor::makeWaveVectors()
{
    Vector    dWave;
    Boundary* boundaryPtr = &system().boundary();
    int       i, j;

    // Calculate wavevectors
    for (i = 0; i < nWave_; ++i) {
        waveVectors_[i] = Vector::Zero;
        for (j = 0; j < Dimension; ++j) {
            dWave  = boundaryPtr->reciprocalBasisVector(j);
            dWave *= waveIntVectors_[i][j];
            waveVectors_[i] += dWave;
            //std::cout << waveVectors_[i] << std::endl;
        }
    }
}