#include <deal.II/base/table.h>
#include <deal.II/base/tensor.h>
+#include <deal.II/differentiation/ad/ad_number_traits.h>
+
#include <deal.II/lac/exceptions.h>
#include <deal.II/lac/identity_matrix.h>
class FullMatrix : public Table<2, number>
{
public:
+ // The assertion in full_matrix.templates.h for whether or not a number is
+ // finite is not compatible for AD number types.
+ static_assert(
+ !Differentiation::AD::is_ad_number<number>::value,
+ "The FullMatrix class does not support auto-differentiable numbers.");
+
/**
* A type of used to index into this container.
*/
#include <deal.II/base/logstream.h>
#include <deal.II/base/subscriptor.h>
+#include <deal.II/differentiation/ad/ad_number_traits.h>
+
#include <deal.II/lac/vector_operation.h>
#include <deal.II/lac/vector_type_traits.h>
class Vector : public Subscriptor
{
public:
+ // The assertion in vector.templates.h for whether or not a number is
+ // finite is not compatible for AD number types.
+ static_assert(
+ !Differentiation::AD::is_ad_number<Number>::value,
+ "The Vector class does not support auto-differentiable numbers.");
+
/**
* Declare standard types used in all containers. These types parallel those
* in the <tt>C++</tt> standard libraries <tt>vector<...></tt> class.