35   for (
int s1=0; s1<
fes.Size(); ++s1)
 
   37      for (
int s2=0; s2<
fes.Size(); ++s2)
 
   45   for (
int s=0; s<statef.
Size(); s++)
 
   49   for (
int s=0; s<paramf.
Size(); s++)
 
   58   for (
int s1=0; s1<
fes.Size(); ++s1)
 
   60      for (
int s2=0; s2<
fes.Size(); ++s2)
 
 
   98   for (
int s = 0; s < 
fes.Size(); ++s)
 
  102         rhs[s]->SetSubVector(*
ess_tdofs[s], 0.0);
 
 
  116   for (
int s = 0; s < 
paramfes.Size(); ++s)
 
 
  130   for (
int s = 0; s < 
fes.Size(); ++s)
 
 
  151   for (
int s=0; s<
fes.Size(); ++s)
 
  153      fes[s]->GetProlongationMatrix()->Mult(
 
  161      MFEM_ABORT(
"TODO: assemble contributions from shared face terms");
 
  164   for (
int s=0; s<
fes.Size(); ++s)
 
  166      fes[s]->GetProlongationMatrix()->MultTranspose(
 
 
  181   for (
int s=0; s<
paramfes.Size(); ++s)
 
  183      paramfes[s]->GetProlongationMatrix()->Mult(
 
  191      MFEM_ABORT(
"TODO: assemble contributions from shared face terms");
 
  194   for (
int s=0; s<
paramfes.Size(); ++s)
 
  196      paramfes[s]->GetProlongationMatrix()->MultTranspose(
 
 
  211   for (
int s=0; s<
fes.Size(); ++s)
 
  213      fes[s]->GetProlongationMatrix()->Mult(
 
  223   for (
int i = 0; i < 
fes.Size(); ++i)
 
  225      for (
int j = 0; j < 
fes.Size(); ++j)
 
 
  236   for (
int s1=0; s1<
fes.Size(); ++s1)
 
  238      for (
int s2=0; s2<
fes.Size(); ++s2)
 
 
  254   for (
int s1=0; s1<
fes.Size(); ++s1)
 
  258      for (
int s2=0; s2<
fes.Size(); ++s2)
 
  268      MFEM_ABORT(
"TODO: assemble contributions from shared face terms");
 
  271   for (
int s1=0; s1<
fes.Size(); ++s1)
 
  273      for (
int s2=0; s2<
fes.Size(); ++s2)
 
  281            dA.MakeSquareBlockDiag(pfes[s1]->GetComm(), pfes[s1]->GlobalVSize(),
 
  282                                   pfes[s1]->GetDofOffsets(), 
Grads(s1,s1));
 
  283            Ph.ConvertFrom(pfes[s1]->Dof_TrueDof_Matrix());
 
  291            dA.MakeRectangularBlockDiag(pfes[s1]->GetComm(),
 
  292                                        pfes[s1]->GlobalVSize(),
 
  293                                        pfes[s2]->GlobalVSize(),
 
  294                                        pfes[s1]->GetDofOffsets(),
 
  295                                        pfes[s2]->GetDofOffsets(),
 
  298            Ph.ConvertFrom(pfes[s2]->Dof_TrueDof_Matrix());
 
 
  316   for (
int s1=0; s1<
fes.Size(); ++s1)
 
  318      for (
int s2=0; s2<
fes.Size(); ++s2)
 
 
  330   for (
int s=0; s<
fes.Size(); ++s)
 
  332      fes[s]->GetProlongationMatrix()->Mult(
 
 
  342   for (
int s=0; s<
fes.Size(); ++s)
 
  344      fes[s]->GetProlongationMatrix()->Mult(
 
 
  353   for (
int s=0; s<
paramfes.Size(); ++s)
 
  355      paramfes[s]->GetProlongationMatrix()->Mult(
 
 
int Size() const
Return the logical size of the array.
A class to handle Block systems in a matrix-free implementation.
void SetBlock(int iRow, int iCol, Operator *op, real_t c=1.0)
Add a block op in the block-entry (iblock, jblock).
void Update(real_t *data, const Array< int > &bOffsets)
Update method.
Vector & GetBlock(int i)
Get the i-th vector in the block.
Class FiniteElementSpace - responsible for providing FEM view of the mesh, mainly managing the set of...
Pointer to an Operator of a specified type.
void EliminateRowsCols(OperatorHandle &A, const Array< int > &ess_dof_list)
Reset the OperatorHandle to be the eliminated part of A after elimination of the essential dofs ess_d...
void ConvertFrom(OperatorHandle &A)
Convert the given OperatorHandle A to the currently set type id.
Type
Enumeration defining IDs for some classes derived from Operator.
@ Hypre_ParCSR
ID for class HypreParMatrix.
Abstract parallel finite element space.
void SetSubVector(const Array< int > &dofs, const real_t value)
Set the entries listed in dofs to the given value.
Helper struct to convert a C++ type to an MPI type.