/**
* Constructor
*/
- DoFAccessor () : dof_handler(0) {
- Assert (false, ExcInvalidObject());
- };
+ DoFAccessor ();
/**
* This should be the default constructor.
* non-const, even if they preserve
* constness.
*/
- DoFAccessor (const DoFHandler<dim> *dof_handler) :
- dof_handler(const_cast<DoFHandler<dim>*>(dof_handler)) {};
+ DoFAccessor (const DoFHandler<dim> *dof_handler);
/**
* Reset the DoF handler pointer.
*/
- void set_dof_handler (DoFHandler<dim> *dh) {
- Assert (dh != 0, ExcInvalidObject());
- dof_handler = dh;
- };
+ void set_dof_handler (DoFHandler<dim> *dh);
+
+ /**
+ * Return a handle on the
+ * #DoFHandler# object which we
+ * are using.
+ */
+ const DoFHandler<dim> &
+ get_dof_handler () const;
/**
* Copy operator.
*/
- DoFAccessor<dim> & operator = (const DoFAccessor<dim> &da) {
- set_dof_handler (da.dof_handler);
- return *this;
- };
+ DoFAccessor<dim> &
+ operator = (const DoFAccessor<dim> &da);
/**
* Exception for child classes
#include <vector>
+/*------------------------- Functions: DoFAccessor ---------------------------*/
+
+
+template <int dim>
+DoFAccessor<dim>::DoFAccessor () :
+ dof_handler(0)
+{
+ Assert (false, ExcInvalidObject());
+};
+
+
+
+template <int dim>
+inline
+DoFAccessor<dim>::DoFAccessor (const DoFHandler<dim> *dof_handler) :
+ dof_handler(const_cast<DoFHandler<dim>*>(dof_handler))
+{};
+
+
+
+template <int dim>
+void
+DoFAccessor<dim>::set_dof_handler (DoFHandler<dim> *dh)
+{
+ Assert (dh != 0, ExcInvalidObject());
+ dof_handler = dh;
+};
+
+
+
+template <int dim>
+const DoFHandler<dim> &
+DoFAccessor<dim>::get_dof_handler () const
+{
+ return *dof_handler;
+};
+
+
+
+template <int dim>
+inline
+DoFAccessor<dim> &
+DoFAccessor<dim>::operator = (const DoFAccessor<dim> &da)
+{
+ set_dof_handler (da.dof_handler);
+ return *this;
+};
+
+
+
+
/*------------------------- Functions: DoFLineAccessor -----------------------*/
template <int dim>
};
+
template <int dim>
void DoFObjectAccessor<1, dim>::set_vertex_dof_index (const unsigned int vertex,
const unsigned int i,
};
+
template <int dim>
void DoFObjectAccessor<1, dim>::
distribute_local_to_global (const Vector<double> &local_source,
};
+
template <int dim>
void DoFObjectAccessor<1, dim>::
distribute_local_to_global (const FullMatrix<double> &local_source,
};
+
template <int dim>
template <class InputVector, typename number>
void
};
+
template <int dim>
template <class OutputVector, typename number>
void
};
+
template <int dim>
void
DoFObjectAccessor<2, dim>::set_vertex_dof_index (const unsigned int vertex,
};
+
template <int dim>
void DoFObjectAccessor<2, dim>::
distribute_local_to_global (const Vector<double> &local_source,
};
+
template <int dim>
void DoFObjectAccessor<2, dim>::
distribute_local_to_global (const FullMatrix<double> &local_source,
};
+
template <int dim>
template <class InputVector, typename number>
void
};
+
template <int dim>
template <class OutputVector, typename number>
void
};
+
template <int dim>
void DoFObjectAccessor<3, dim>::set_vertex_dof_index (const unsigned int vertex,
const unsigned int i,
};
+
template <int dim>
void DoFObjectAccessor<3, dim>::
distribute_local_to_global (const Vector<double> &local_source,
};
+
template <int dim>
void DoFObjectAccessor<3, dim>::
distribute_local_to_global (const FullMatrix<double> &local_source,
};
+
template <int dim>
template <class InputVector, typename number>
void
};
+
template <int dim>
template <class OutputVector, typename number>
void
};
+
/*------------------------- Functions: DoFCellAccessor -----------------------*/
};
+
template <int dim>
template <class OutputVector, typename number>
void
BlockVector<3,double> &) const;
+template class DoFAccessor<deal_II_dimension>;
+
#if deal_II_dimension == 1
template class DoFObjectAccessor<1, 1>;
#endif