public void swap(NinePointLinearOp m) { Utils.swap(ref d0_, ref m.d0_); Utils.swap(ref d1_, ref m.d1_); Utils.swap(ref i00_, ref m.i00_); Utils.swap(ref i10_, ref m.i10_); Utils.swap(ref i20_, ref m.i20_); Utils.swap(ref i01_, ref m.i01_); Utils.swap(ref i21_, ref m.i21_); Utils.swap(ref i02_, ref m.i02_); Utils.swap(ref i12_, ref m.i12_); Utils.swap(ref i22_, ref m.i22_); Utils.swap(ref a00_, ref m.a00_); Utils.swap(ref a10_, ref m.a10_); Utils.swap(ref a20_, ref m.a20_); Utils.swap(ref a01_, ref m.a01_); Utils.swap(ref a21_, ref m.a21_); Utils.swap(ref a02_, ref m.a02_); Utils.swap(ref a12_, ref m.a12_); Utils.swap(ref a22_, ref m.a22_); Utils.swap(ref a11_, ref m.a11_); Utils.swap(ref mesher_, ref m.mesher_); }
public NinePointLinearOp mult(Vector r) { NinePointLinearOp retVal = new NinePointLinearOp(d0_, d1_, mesher_); int size = mesher_.layout().size(); //#pragma omp parallel for for (int i = 0; i < size; ++i) { double s = r[i]; retVal.a11_[i] = a11_[i] * s; retVal.a00_[i] = a00_[i] * s; retVal.a01_[i] = a01_[i] * s; retVal.a02_[i] = a02_[i] * s; retVal.a10_[i] = a10_[i] * s; retVal.a20_[i] = a20_[i] * s; retVal.a21_[i] = a21_[i] * s; retVal.a12_[i] = a12_[i] * s; retVal.a22_[i] = a22_[i] * s; } return(retVal); }
public NinePointLinearOp(NinePointLinearOp m) { d0_ = m.d0_; d1_ = m.d1_; i00_ = new InitializedList <int>(m.mesher_.layout().size()); i10_ = new InitializedList <int>(m.mesher_.layout().size()); i20_ = new InitializedList <int>(m.mesher_.layout().size()); i01_ = new InitializedList <int>(m.mesher_.layout().size()); i21_ = new InitializedList <int>(m.mesher_.layout().size()); i02_ = new InitializedList <int>(m.mesher_.layout().size()); i12_ = new InitializedList <int>(m.mesher_.layout().size()); i22_ = new InitializedList <int>(m.mesher_.layout().size()); a00_ = new InitializedList <double>(m.mesher_.layout().size()); a10_ = new InitializedList <double>(m.mesher_.layout().size()); a20_ = new InitializedList <double>(m.mesher_.layout().size()); a01_ = new InitializedList <double>(m.mesher_.layout().size()); a11_ = new InitializedList <double>(m.mesher_.layout().size()); a21_ = new InitializedList <double>(m.mesher_.layout().size()); a02_ = new InitializedList <double>(m.mesher_.layout().size()); a12_ = new InitializedList <double>(m.mesher_.layout().size()); a22_ = new InitializedList <double>(m.mesher_.layout().size()); mesher_ = m.mesher_; m.i00_.copy(0, m.i00_.Count, 0, i00_); m.i10_.copy(0, m.i10_.Count, 0, i10_); m.i20_.copy(0, m.i20_.Count, 0, i20_); m.i01_.copy(0, m.i01_.Count, 0, i01_); m.i21_.copy(0, m.i21_.Count, 0, i21_); m.i02_.copy(0, m.i02_.Count, 0, i02_); m.i12_.copy(0, m.i12_.Count, 0, i12_); m.i22_.copy(0, m.i22_.Count, 0, i22_); m.a00_.copy(0, m.a00_.Count, 0, a00_); m.a10_.copy(0, m.a10_.Count, 0, a10_); m.a20_.copy(0, m.a20_.Count, 0, a20_); m.a01_.copy(0, m.a01_.Count, 0, a01_); m.a11_.copy(0, m.a11_.Count, 0, a11_); m.a21_.copy(0, m.a21_.Count, 0, a21_); m.a02_.copy(0, m.a02_.Count, 0, a02_); m.a12_.copy(0, m.a12_.Count, 0, a12_); m.a22_.copy(0, m.a22_.Count, 0, a22_); }