message: Adding Sync and SyncAlias methods for [Par]ComplexGridFunction and [Par]ComplexLinearForm.
diff: @@ -38,7 +38,7 @@ protected:
  void Destroy() { delete gfr; delete gfi; }
  public:
  - /* @brief Construct a ComplexGridFunction associated with the
  + /** @brief Construct a ComplexGridFunction associated with the
  FiniteElementSpace @a *f. */
  ComplexGridFunction(FiniteElementSpace *f);
  @@ -71,6 +71,14 @@ public:
  const GridFunction & real() const { return *gfr; }
  const GridFunction & imag() const { return *gfi; }
  + /// Update the memory location of the real and imaginary GridFunction @a gfr and @a gfi
  + /// to match the ComplexGridFunction.
  + void Sync() { gfr->SyncMemory(*this); gfi->SyncMemory(*this); }
  +
  + /// Update the alias memory location of the real and imaginary GridFunction @a gfr and @a gfi
  + /// to match the ComplexGridFunction.
  + void SyncAlias() { gfr->SyncAliasMemory(*this); gfi->SyncAliasMemory(*this); }
  +
  /// Destroys the grid function.
  virtual ~ComplexGridFunction() { Destroy(); }
  @@ -157,6 +165,14 @@ public:
  const LinearForm & real() const { return *lfr; }
  const LinearForm & imag() const { return *lfi; }
  + /// Update the memory location of the real and imaginary LinearForm @a lfr and @a lfi
  + /// to match the ComplexLinearForm.
  + void Sync() { lfr->SyncMemory(*this); lfi->SyncMemory(*this); }
  +
  + /// Update the alias memory location of the real and imaginary LinearForm @a lfr and @a lfi
  + /// to match the ComplexLinearForm.
  + void SyncAlias() { lfr->SyncAliasMemory(*this); lfi->SyncAliasMemory(*this); }
  +
  void Update();
  void Update(FiniteElementSpace *f);
  @@ -323,7 +339,7 @@ protected:
  public:
  - /* @brief Construct a ParComplexGridFunction associated with the
  + /** @brief Construct a ParComplexGridFunction associated with the
  ParFiniteElementSpace @a *pf. */
  ParComplexGridFunction(ParFiniteElementSpace *pf);
  @@ -365,6 +381,15 @@ public:
  const ParGridFunction & real() const { return *pgfr; }
  const ParGridFunction & imag() const { return *pgfi; }
  + /// Update the memory location of the real and imaginary ParGridFunction @a pgfr and @a pgfi
  + /// to match the ParComplexGridFunction.
  + void Sync() { pgfr->SyncMemory(*this); pgfi->SyncMemory(*this); }
  +
  + /// Update the alias memory location of the real and imaginary ParGridFunction @a pgfr and @a pgfi
  + /// to match the ParComplexGridFunction.
  + void SyncAlias() { pgfr->SyncAliasMemory(*this); pgfi->SyncAliasMemory(*this); }
  +
  +
  virtual double ComputeL2Error(Coefficient &exsolr, Coefficient &exsoli,
  const IntegrationRule *irs[] = NULL) const
  {
  @@ -475,6 +500,14 @@ public:
  const ParLinearForm & real() const { return *plfr; }
  const ParLinearForm & imag() const { return *plfi; }
  + /// Update the memory location of the real and imaginary ParLinearForm @a lfr and @a lfi
  + /// to match the ParComplexLinearForm.
  + void Sync() { plfr->SyncMemory(*this); plfi->SyncMemory(*this); }
  +
  + /// Update the alias memory location of the real and imaginary ParLinearForm @a plfr and @a plfi
  + /// to match the ParComplexLinearForm.
  + void SyncAlias() { plfr->SyncAliasMemory(*this); plfi->SyncAliasMemory(*this); }
  +
  void Update(ParFiniteElementSpace *pf = NULL);
  /// Assembles the linear form i.e. sums over all domain/bdr integrators.
  