7 #ifndef __matrix_curl_curl_h 8 #define __matrix_curl_curl_h 10 #include <amandus/integrator.h> 11 #include <deal.II/integrators/divergence.h> 12 #include <deal.II/integrators/l2.h> 13 #include <deal.II/integrators/maxwell.h> 14 #include <deal.II/meshworker/integration_info.h> 69 virtual void cell(dealii::MeshWorker::DoFInfo<dim>& dinfo,
70 dealii::MeshWorker::IntegrationInfo<dim>& info)
const;
71 virtual void boundary(dealii::MeshWorker::DoFInfo<dim>& dinfo,
72 dealii::MeshWorker::IntegrationInfo<dim>& info)
const;
73 virtual void face(dealii::MeshWorker::DoFInfo<dim>& dinfo1,
74 dealii::MeshWorker::DoFInfo<dim>& dinfo2,
75 dealii::MeshWorker::IntegrationInfo<dim>& info1,
76 dealii::MeshWorker::IntegrationInfo<dim>& info2)
const;
84 : curl_coefficient(1, 1.)
85 , mass_coefficient(1, 0.)
87 this->use_boundary =
false;
88 this->use_face =
false;
94 dealii::MeshWorker::IntegrationInfo<dim>& info)
const 96 if (dinfo.n_matrices() > 4)
98 AssertDimension(dinfo.n_matrices(), 8);
102 AssertDimension(dinfo.n_matrices(), 4);
104 const unsigned int id = dinfo.cell->material_id();
110 Maxwell::curl_curl_matrix(dinfo.matrix(0,
false).matrix, info.fe_values(0) );
113 Divergence::gradient_matrix(dinfo.matrix(1,
false).matrix, info.fe_values(1), info.fe_values(0));
114 dinfo.matrix(2,
false).matrix.copy_transposed(dinfo.matrix(1,
false).matrix);
115 if (dinfo.n_matrices() > 4)
117 L2::mass_matrix(dinfo.matrix(4,
false).matrix, info.fe_values(0));
127 typename dealii::MeshWorker::IntegrationInfo<dim>& )
const 134 dealii::MeshWorker::DoFInfo<dim>& ,
135 dealii::MeshWorker::IntegrationInfo<dim>& ,
136 dealii::MeshWorker::IntegrationInfo<dim>& )
const virtual void face(dealii::MeshWorker::DoFInfo< dim > &dinfo1, dealii::MeshWorker::DoFInfo< dim > &dinfo2, dealii::MeshWorker::IntegrationInfo< dim > &info1, dealii::MeshWorker::IntegrationInfo< dim > &info2) const
Definition: maxwell/eigen.h:133
Definition: maxwell/eigen.h:22
virtual void boundary(dealii::MeshWorker::DoFInfo< dim > &dinfo, dealii::MeshWorker::IntegrationInfo< dim > &info) const
Definition: maxwell/eigen.h:126
std::vector< double > curl_coefficient
Definition: maxwell/eigen.h:78
virtual void cell(dealii::MeshWorker::DoFInfo< dim > &dinfo, dealii::MeshWorker::IntegrationInfo< dim > &info) const
Definition: maxwell/eigen.h:93
Definition: maxwell/eigen.h:61
std::vector< double > mass_coefficient
Definition: maxwell/eigen.h:79
Definition: integrator.h:29