]> git.unchartedbackwaters.co.uk Git - francis/ofc.git/commitdiff
Use reciprocal from FFT-box instead of cell in Laplacian.
authorFrancis Russell <francis@unchartedbackwaters.co.uk>
Sat, 19 May 2012 17:18:34 +0000 (18:18 +0100)
committerFrancis Russell <francis@unchartedbackwaters.co.uk>
Sat, 19 May 2012 17:18:34 +0000 (18:18 +0100)
src/ofc/generators/onetep/Laplacian.scala
src/ofc/generators/onetep/OnetepTypes.scala

index ff3ef49f70251944cfd78da9b4c30b1707565613..e70a16517d7d93d0b81e62a2bd4a28071c1c89e6 100644 (file)
@@ -34,7 +34,7 @@ class Laplacian(op: Field)  extends Field {
       for(dim <- 0 to 2) {
         var component : Expression[FloatType] = new FloatLiteral(0.0)
         for(vec <- 0 to 2) {
-          val vector = OnetepTypes.CellInfo.public % OnetepTypes.CellInfo.latticeReciprocal(vec)
+          val vector = OnetepTypes.FFTBoxInfo.public % OnetepTypes.FFTBoxInfo.latticeReciprocal(vec)
           component = component + vector % OnetepTypes.Point.coord(dim) * new Conversion[IntType, FloatType](indices(vec) - 1)
         }
         loops(0) += new AssignStatement(reciprocalVector(dim), component)
index fd990b5959f0e350d7ed05de1f22df89cb5ff0d4..dc965dab265b84ab6076385269dff8c66fbf7961 100644 (file)
@@ -62,6 +62,7 @@ object OnetepTypes {
 
   object FFTBoxInfo extends StructType {
     val public = new NamedUnboundVarSymbol[StructType]("pub_fftbox", FFTBoxInfo)
+    val latticeReciprocal = for(dim <- 1 to 3) yield new FieldSymbol[StructType]("b"+dim, Point)
     val totalPts = {for (dim <- 1 to 3) yield new FieldSymbol[IntType]("total_pt"+dim)}.toSeq
     def getFortranAttributes = Set("type(FFTBOX_INFO)")
   }