Reference documentation for deal.II version Git fe6b7ef64a 20220126 15:08:32 +0100

Classes  
class  DataEntryBase 
struct  ParallelData 
struct  ParallelDataBase 
Enumerations  
enum  ComponentExtractor { ComponentExtractor::real_part, ComponentExtractor::imaginary_part } 
The DataEntry classes abstract away the concrete data type of vectors users can attach to DataOut (and similar) objects and allow the underlying DataOut functions to query for individual elements of solution vectors without having to know the concrete vector type. This avoids that DataOut has to know what vectors are being used, but it has the downside that DataOut also doesn't know the underlying scalar type of these vectors.
If the underlying scalar types all represent real numbers (in the mathematical sense – i.e., the scalar type would be float
, double
, etc) then that is not a problem – DataOut simply receives the values of individual vector components as double
objects. On the other hand, if the vector type uses a std::complex scalar type, then DataEntry returning a double
for a vector entry is not sufficient – we need to provide DataOut with a way to query both the real and the imaginary part, so that they can be written into output files separately.
This enum allows DataOut to tell a DataEntry function which component of a vector entry it wants to query, i.e., whether it wants the real or the imaginary part of a vector entry.
Enumerator  

real_part  
imaginary_part 
Definition at line 199 of file data_out_dof_data.h.