--- /dev/null
+Removed: Deprecations from the 9.5 release have been removed.
+See https://github.com/dealii/dealii/pull/17444 for details.
+<br>
+(Daniel Arndt, 2024/08/07)
-/**
- * Create a view to an entire Tensor object. This is equivalent to initializing
- * an ArrayView object with a pointer to the first element and the size of the
- * given argument.
- *
- * This function is used for @p const references to objects of Tensor type
- * because they contain immutable elements. Consequently, the return type of
- * this function is a view to a set of @p const objects.
- *
- * @param[in] tensor The Tensor for which we want to have an array view
- * object. The array view corresponds to the <em>entire</em> object but the
- * order in which the entries are presented in the array is an implementation
- * detail and should not be relied upon.
- *
- * @deprecated This function suggests that the elements of a Tensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- *
- * @relatesalso ArrayView
- */
-template <int rank, int dim, typename Number>
-DEAL_II_DEPRECATED inline ArrayView<const Number>
-make_array_view(const Tensor<rank, dim, Number> &tensor)
-{
- static_assert(rank == 1,
- "This function is only available for rank-1 tensors "
- "because higher-rank tensors may not store their elements "
- "in a contiguous array.");
-
- return make_array_view(tensor.begin_raw(), tensor.end_raw());
-}
-
-
-
-/**
- * Create a view to an entire Tensor object. This is equivalent to initializing
- * an ArrayView object with a pointer to the first element and the size of the
- * given argument.
- *
- * This function is used for non-@p const references to objects of Tensor type.
- * Such objects contain elements that can be written to. Consequently,
- * the return type of this function is a view to a set of writable objects.
- *
- * @param[in] tensor The Tensor for which we want to have an array view
- * object. The array view corresponds to the <em>entire</em> object but the
- * order in which the entries are presented in the array is an implementation
- * detail and should not be relied upon.
- *
- * @deprecated This function suggests that the elements of a Tensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- *
- * @relatesalso ArrayView
- */
-template <int rank, int dim, typename Number>
-DEAL_II_DEPRECATED inline ArrayView<Number>
-make_array_view(Tensor<rank, dim, Number> &tensor)
-{
- static_assert(rank == 1,
- "This function is only available for rank-1 tensors "
- "because higher-rank tensors may not store their elements "
- "in a contiguous array.");
-
- return make_array_view(tensor.begin_raw(), tensor.end_raw());
-}
-
-
-
-/**
- * Create a view to an entire SymmetricTensor object. This is equivalent to
- * initializing an ArrayView object with a pointer to the first element and the
- * size of the given argument.
- *
- * This function is used for @p const references to objects of SymmetricTensor
- * type because they contain immutable elements. Consequently, the return type
- * of this function is a view to a set of @p const objects.
- *
- * @param[in] tensor The SymmetricTensor for which we want to have an array
- * view object. The array view corresponds to the <em>entire</em> object but
- * the order in which the entries are presented in the array is an
- * implementation detail and should not be relied upon.
- *
- * @deprecated This function suggests that the elements of a SymmetricTensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- *
- * @relatesalso ArrayView
- */
-template <int rank, int dim, typename Number>
-DEAL_II_DEPRECATED inline ArrayView<const Number>
-make_array_view(const SymmetricTensor<rank, dim, Number> &tensor)
-{
- return make_array_view(tensor.begin_raw(), tensor.end_raw());
-}
-
-
-
-/**
- * Create a view to an entire SymmetricTensor object. This is equivalent to
- * initializing an ArrayView object with a pointer to the first element and the
- * size of the given argument.
- *
- * This function is used for non-@p const references to objects of
- * SymmetricTensor type. Such objects contain elements that can be written to.
- * Consequently, the return type of this function is a view to a set of writable
- * objects.
- *
- * @param[in] tensor The SymmetricTensor for which we want to have an array
- * view object. The array view corresponds to the <em>entire</em> object but
- * the order in which the entries are presented in the array is an
- * implementation detail and should not be relied upon.
- *
- * @deprecated This function suggests that the elements of a SymmetricTensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- *
- * @relatesalso ArrayView
- */
-template <int rank, int dim, typename Number>
-DEAL_II_DEPRECATED inline ArrayView<Number>
-make_array_view(SymmetricTensor<rank, dim, Number> &tensor)
-{
- return make_array_view(tensor.begin_raw(), tensor.end_raw());
-}
-
-
-
/**
* Create a view to an entire C-style array. This is equivalent to
* initializing an ArrayView object with a pointer to the first element and
*/
bool print_date_and_time;
- /**
- * A data type providing the different possible zlib compression
- * levels. These map directly to constants defined by zlib.
- *
- * @deprecated Use DataOutBase::CompressionLevel instead.
- */
- using ZlibCompressionLevel DEAL_II_DEPRECATED =
- DataOutBase::CompressionLevel;
-
- DEAL_II_DEPRECATED static const DataOutBase::CompressionLevel
- no_compression = DataOutBase::CompressionLevel::no_compression;
- DEAL_II_DEPRECATED static const DataOutBase::CompressionLevel
- best_compression = DataOutBase::CompressionLevel::best_compression;
- DEAL_II_DEPRECATED static const DataOutBase::CompressionLevel best_speed =
- DataOutBase::CompressionLevel::best_speed;
- DEAL_II_DEPRECATED static const DataOutBase::CompressionLevel
- default_compression = DataOutBase::CompressionLevel::default_compression;
-
/**
* Flag determining the compression level at which zlib, if available, is
* run. The default is <tt>best_speed</tt>.
const unsigned int dim,
const ReferenceCell &cell_type);
- /**
- * Deprecated constructor.
- *
- * @deprecated Use the constructor that additionally takes a ReferenceCell.
- */
- XDMFEntry(const std::string &filename,
- const double time,
- const std::uint64_t nodes,
- const std::uint64_t cells,
- const unsigned int dim);
-
- /**
- * Deprecated constructor.
- *
- * @deprecated Use the constructor that additionally takes a ReferenceCell.
- */
- XDMFEntry(const std::string &mesh_filename,
- const std::string &solution_filename,
- const double time,
- const std::uint64_t nodes,
- const std::uint64_t cells,
- const unsigned int dim);
-
/**
* Simplified constructor that calls the complete constructor for
* cases where <code>dim==spacedim</code>.
const unsigned int dim,
const ReferenceCell &cell_type);
- /**
- * Deprecated constructor.
- *
- * @deprecated Use the constructor that additionally takes a ReferenceCell.
- */
- DEAL_II_DEPRECATED
- XDMFEntry(const std::string &mesh_filename,
- const std::string &solution_filename,
- const double time,
- const std::uint64_t nodes,
- const std::uint64_t cells,
- const unsigned int dim,
- const unsigned int spacedim);
-
/**
* Constructor that sets all members to provided parameters.
*/
std::string
get_xdmf_content(const unsigned int indent_level) const;
- /**
- * Get the XDMF content associated with this entry.
- * If the entry is not valid, this returns an empty string.
- *
- * @deprecated Use the other function instead.
- */
- DEAL_II_DEPRECATED
- std::string
- get_xdmf_content(const unsigned int indent_level,
- const ReferenceCell &reference_cell) const;
-
private:
/**
* Whether this entry is valid and contains data to be written.
bool get_was_called;
};
-
-
- /**
- * If @p comm is an intracommunicator, this function returns a new
- * communicator @p newcomm with communication group defined by the
- * @p group argument. The function is only collective over the group of
- * processes that actually want to create the communicator, i.e., that
- * are named in the @p group argument. If multiple threads at a given
- * process perform concurrent create_group() operations, the user must
- * distinguish these operations by providing different @p tag or @p comm
- * arguments.
- *
- * This function was introduced in the MPI-3.0 standard. If available,
- * the corresponding function in the provided MPI implementation is used.
- * Otherwise, the implementation follows the one described in the
- * following publication:
- * @code{.bib}
- * @inproceedings{dinan2011noncollective,
- * title = {Noncollective communicator creation in MPI},
- * author = {Dinan, James and Krishnamoorthy, Sriram and Balaji,
- * Pavan and Hammond, Jeff R and Krishnan, Manojkumar and
- * Tipparaju, Vinod and Vishnu, Abhinav},
- * booktitle = {European MPI Users' Group Meeting},
- * pages = {282--291},
- * year = {2011},
- * organization = {Springer}
- * }
- * @endcode
- *
- * @deprecated Use MPI_Comm_create_group directly
- */
-#ifdef DEAL_II_WITH_MPI
- DEAL_II_DEPRECATED int
- create_group(const MPI_Comm comm,
- const MPI_Group &group,
- const int tag,
- MPI_Comm *new_comm);
-#endif
-
/**
* Given the number of locally owned elements @p locally_owned_size,
* create a 1:1 partitioning of the of elements across the MPI
* - MPI_Isend, MPI_Irecv
* - MPI_Probe, MPI_Iprobe
* - MPI_Comm_create_group, MPI_Intercomm_create,
- * Utilities::MPI::create_group
*/
namespace Tags
{
DEAL_II_HOST constexpr explicit SymmetricTensor(
const SymmetricTensor<rank_, dim, OtherNumber> &initializer);
- /**
- * Return a pointer to the first element of the underlying storage.
- *
- * @deprecated This function suggests that the elements of a SymmetricTensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- */
- DEAL_II_DEPRECATED
- Number *
- begin_raw();
-
- /**
- * Return a const pointer to the first element of the underlying storage.
- *
- * @deprecated This function suggests that the elements of a SymmetricTensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- */
- DEAL_II_DEPRECATED
- const Number *
- begin_raw() const;
-
- /**
- * Return a pointer to the element past the end of the underlying storage.
- *
- * @deprecated This function suggests that the elements of a SymmetricTensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- */
- DEAL_II_DEPRECATED
- Number *
- end_raw();
-
- /**
- * Return a const pointer to the element past the end of the underlying
- * storage.
- *
- * @deprecated This function suggests that the elements of a SymmetricTensor
- * object are stored as a contiguous array, but this is not in fact true
- * and one should not pretend that this so. As a consequence, this function
- * is deprecated.
- */
- DEAL_II_DEPRECATED
- const Number *
- end_raw() const;
-
/**
* Assignment operator from symmetric tensors with different underlying scalar
* type.
-template <int rank_, int dim, typename Number>
-inline Number *
-SymmetricTensor<rank_, dim, Number>::begin_raw()
-{
- return std::addressof(this->access_raw_entry(0));
-}
-
-
-
-template <int rank_, int dim, typename Number>
-inline const Number *
-SymmetricTensor<rank_, dim, Number>::begin_raw() const
-{
- return std::addressof(this->access_raw_entry(0));
-}
-
-
-
-template <int rank_, int dim, typename Number>
-inline Number *
-SymmetricTensor<rank_, dim, Number>::end_raw()
-{
- return begin_raw() + n_independent_components;
-}
-
-
-
-template <int rank_, int dim, typename Number>
-inline const Number *
-SymmetricTensor<rank_, dim, Number>::end_raw() const
-{
- return begin_raw() + n_independent_components;
-}
-
-
-
template <int rank_, int dim, typename Number>
DEAL_II_HOST constexpr inline const Number &
SymmetricTensor<rank_, dim, Number>::access_raw_entry(
typename numbers::NumberTraits<Number>::real_type
norm_square() const;
- /**
- * Fill a vector with all tensor elements.
- *
- * This function unrolls all tensor entries into a single, linearly numbered
- * vector. As usual in C++, the rightmost index of the tensor marches
- * fastest.
- *
- * @deprecated Use the more general function that takes a pair of iterators
- * instead.
- */
- template <typename OtherNumber>
- DEAL_II_DEPRECATED void
- unroll(Vector<OtherNumber> &result) const;
-
/**
* Fill a range with all tensor elements.
*
-template <int rank_, int dim, typename Number>
-template <typename OtherNumber>
-inline void
-Tensor<rank_, dim, Number>::unroll(Vector<OtherNumber> &result) const
-{
- unroll(result.begin(), result.end());
-}
-
-
-
template <int rank_, int dim, typename Number>
template <class Iterator>
inline void
* must be empty before calling this function.
*
* You need to load with the same number of MPI processes that
- * you saved with, hence autopartition is disabled.
+ * you saved with.
*
* Cell-based data that was saved with register_data_attach() can be read
* in with notify_ready_to_unpack() after calling load().
virtual void
load(const std::string &filename) override;
- /**
- * @copydoc load()
- *
- * @deprecated The autopartition parameter has been removed.
- */
- DEAL_II_DEPRECATED
- virtual void
- load(const std::string &filename, const bool autopartition) override;
-
private:
virtual unsigned int
coarse_cell_id_to_coarse_cell_index(
virtual void
load(const std::string &file_basename) override;
- /**
- * @copydoc load()
- *
- * @deprecated The autopartition parameter has been removed.
- */
- DEAL_II_DEPRECATED
- virtual void
- load(const std::string &filename, const bool autopartition) override;
-
/**
* Load the refinement information from a given parallel forest. This
* forest might be obtained from the function call to
virtual void
load(const std::string &filename) override;
- /**
- * This function is not implemented, but needs to be present for the
- * compiler.
- */
- DEAL_II_DEPRECATED
- virtual void
- load(const std::string &filename, const bool autopartition) override;
-
/**
* This function is not implemented, but needs to be present for the
* compiler.
load(const std::string & /*filename*/) override
{}
- /**
- * Dummy replacement to allow for better error messages when compiling
- * this class.
- */
- DEAL_II_DEPRECATED
- virtual void
- load(const std::string & /*filename*/,
- const bool /*autopartition*/) override
- {}
-
/**
* Dummy replacement to allow for better error messages when compiling
* this class.
* spacedim>::load.
*/
using Triangulation<dim, spacedim>::load;
-
-
- /**
- * Same as the function above.
- *
- * @deprecated The autopartition parameter has been removed.
- */
- DEAL_II_DEPRECATED
- virtual void
- load(const std::string &filename, const bool autopartition) = 0;
};
} // namespace parallel
*/
static const types::fe_index default_fe_index = 0;
- /**
- * Invalid index of the finite element to be used on a given cell.
- *
- * @deprecated Use numbers::invalid_fe_index instead.
- */
- static const unsigned int invalid_fe_index DEAL_II_DEPRECATED =
- numbers::invalid_fe_index;
-
- /**
- * The type in which we store the active FE index.
- *
- * @deprecated Use types::fe_index instead.
- */
- using active_fe_index_type DEAL_II_DEPRECATED = types::fe_index;
-
/**
* The type in which we store the offsets in the CRS data structures.
*/
using offset_type = unsigned int;
- /**
- * Invalid active FE index which will be used as a default value to determine
- * whether a future FE index has been set or not.
- *
- * @deprecated Use numbers::invalid_fe_index instead.
- */
- static const types::fe_index invalid_active_fe_index DEAL_II_DEPRECATED =
- numbers::invalid_fe_index;
-
/**
* Standard constructor, not initializing any data. After constructing an
* object with this constructor, use reinit() to get a valid DoFHandler.
*/
MappingQ(const unsigned int polynomial_degree);
- /**
- * The second argument is here for backward compatibility with previous
- * versions of deal.II, but it does not have any effect on the workings of
- * this class.
- */
- DEAL_II_DEPRECATED
- MappingQ(const unsigned int polynomial_degree,
- const bool use_mapping_q_on_all_cells);
-
/**
* Copy constructor.
*/
const double angle,
Triangulation<dim, 3> &triangulation);
- /**
- * Rotate all vertices of the given @p triangulation in counter-clockwise
- * direction around the axis with the given index. Otherwise like the
- * function above; in particular, this function calls the transform() function
- * and so the discussion about manifolds there also applies here.
- *
- * @param[in] angle Angle in radians to rotate the Triangulation by.
- * @param[in] axis Index of the coordinate axis to rotate around, keeping
- * that coordinate fixed (0=x axis, 1=y axis, 2=z axis).
- * @param[in,out] triangulation The Triangulation object to rotate.
- *
- * @note Implemented for dim=1, 2, and 3.
- *
- * @deprecated Use the alternative with the unit vector instead.
- */
- template <int dim>
- DEAL_II_DEPRECATED void
- rotate(const double angle,
- const unsigned int axis,
- Triangulation<dim, 3> &triangulation);
-
/**
* Transform the given triangulation smoothly to a different domain where,
* typically, each of the vertices at the boundary of the triangulation is
friend class SolverBase;
};
- /**
- * An implementation of the transformation interface using the SLEPc
- * Spectrum Folding. This transformation type has been removed in SLEPc
- * 3.5.0 and thus cannot be used in the newer versions.
- *
- * @deprecated Since deal.II requires PETSc 3.7 or newer this class no longer
- * does anything.
- *
- * @ingroup SLEPcWrappers
- */
- class DEAL_II_DEPRECATED TransformationSpectrumFolding
- : public TransformationBase
- {
- public:
- /**
- * Standardized data struct to pipe additional data to the solver.
- */
- struct AdditionalData
- {
- /**
- * Constructor. By default, set the shift parameter to zero.
- */
- explicit AdditionalData(const double shift_parameter = 0);
-
- /**
- * Shift parameter.
- */
- const double shift_parameter;
- };
-
-
- /**
- * Constructor.
- */
- explicit TransformationSpectrumFolding(
- const MPI_Comm mpi_communicator,
- const AdditionalData &data = AdditionalData());
-
- protected:
- /**
- * Store a copy of the flags for this particular solver.
- */
- const AdditionalData additional_data;
- };
-
/**
* An implementation of the transformation interface using the SLEPc Cayley.
*
ArrayView<const double>
get_properties() const;
- /**
- * Tell the particle where to store its properties (even if it does not
- * own properties). Usually this is only done once per particle, but
- * since the particle generator does not know about the properties
- * we want to do it not at construction time. Another use for this
- * function is after particle transfer to a new process.
- *
- * @deprecated This function is only kept for backward compatibility
- * and has no meaning any more. ParticleAccessors always use the
- * property pool of the owning particle handler.
- */
- DEAL_II_DEPRECATED
- void
- set_property_pool(PropertyPool<dim, spacedim> &property_pool);
-
/**
* Return the size in bytes this particle occupies if all of its data is
* serialized (i.e. the number of bytes that is written by the write_data
* Read the data of this object from a stream for the purpose of
* serialization using the [BOOST serialization
* library](https://www.boost.org/doc/libs/1_74_0/libs/serialization/doc/index.html).
- * Note that in order to store the properties correctly, the property pool
- * of this particle has to be known at the time of reading, i.e.
- * set_property_pool() has to have been called, before this function is
- * called.
*/
template <class Archive>
void
- template <int dim, int spacedim>
- inline void
- ParticleAccessor<dim, spacedim>::set_property_pool(
- PropertyPool<dim, spacedim> &new_property_pool)
- {
- Assert(&new_property_pool == property_pool, ExcInternalError());
- (void)new_property_pool;
- }
-
-
-
template <int dim, int spacedim>
inline const typename Triangulation<dim, spacedim>::cell_iterator &
ParticleAccessor<dim, spacedim>::get_surrounding_cell() const
void
deserialize();
- /**
- * Callback function that should be called before every refinement
- * and when writing checkpoints. This function is used to
- * register pack_callback() with the triangulation. This function
- * is used in step-70.
- *
- * @deprecated Please use prepare_for_coarsening_and_refinement() or
- * prepare_for_serialization() instead. See there for further information
- * about the purpose of this function.
- */
- DEAL_II_DEPRECATED
- void
- register_store_callback_function();
-
- /**
- * Callback function that should be called after every refinement
- * and after resuming from a checkpoint. This function is used to
- * register unpack_callback() with the triangulation. This function
- * is used in step-70.
- *
- * @deprecated Please use unpack_after_coarsening_and_refinement() or
- * deserialize() instead. See there for further information about the
- * purpose of this function.
- */
- DEAL_II_DEPRECATED
- void
- register_load_callback_function(const bool serialization);
-
/**
* Serialize the contents of this class using the [BOOST serialization
* library](https://www.boost.org/doc/libs/1_74_0/libs/serialization/doc/index.html).
Tensor<2, 3, Number>
rotation_matrix_3d(const Tensor<1, 3, Number> &axis, const Number &angle);
- /**
- * @copydoc Physics::Transformations::Rotations::rotation_matrix_3d()
- *
- * @deprecated Use the variant with a Tensor as an axis.
- */
- template <typename Number>
- DEAL_II_DEPRECATED Tensor<2, 3, Number>
- rotation_matrix_3d(const Point<3, Number> &axis, const Number &angle);
-
/** @} */
} // namespace Rotations
-template <typename Number>
-Tensor<2, 3, Number>
-Physics::Transformations::Rotations::rotation_matrix_3d(
- const Point<3, Number> &axis,
- const Number &angle)
-{
- return rotation_matrix_3d(static_cast<Tensor<1, 3, Number>>(axis), angle);
-}
-
-
-
template <int dim, typename Number>
inline Tensor<1, dim, Number>
Physics::Transformations::Contravariant::push_forward(
-XDMFEntry::XDMFEntry(const std::string &filename,
- const double time,
- const std::uint64_t nodes,
- const std::uint64_t cells,
- const unsigned int dim)
- : XDMFEntry(filename, filename, time, nodes, cells, dim, dim, ReferenceCell())
-{}
-
XDMFEntry::XDMFEntry(const std::string &filename,
const double time,
const std::uint64_t nodes,
-XDMFEntry::XDMFEntry(const std::string &mesh_filename,
- const std::string &solution_filename,
- const double time,
- const std::uint64_t nodes,
- const std::uint64_t cells,
- const unsigned int dim)
- : XDMFEntry(mesh_filename,
- solution_filename,
- time,
- nodes,
- cells,
- dim,
- dim,
- ReferenceCell())
-{}
-
-
-
XDMFEntry::XDMFEntry(const std::string &mesh_filename,
const std::string &solution_filename,
const double time,
-XDMFEntry::XDMFEntry(const std::string &mesh_filename,
- const std::string &solution_filename,
- const double time,
- const std::uint64_t nodes,
- const std::uint64_t cells,
- const unsigned int dim,
- const unsigned int spacedim)
- : XDMFEntry(mesh_filename,
- solution_filename,
- time,
- nodes,
- cells,
- dim,
- spacedim,
- ReferenceCell())
-{}
-
-
-
namespace
{
/**
-std::string
-XDMFEntry::get_xdmf_content(const unsigned int indent_level,
- const ReferenceCell &reference_cell) const
-{
- // We now store the type of cell in the XDMFEntry:
- (void)reference_cell;
- Assert(cell_type == reference_cell,
- internal::ExcNonMatchingReferenceCellTypes(cell_type, reference_cell));
- return get_xdmf_content(indent_level);
-}
-
-
-
std::string
XDMFEntry::get_xdmf_content(const unsigned int indent_level) const
{
- int
- create_group(const MPI_Comm comm,
- const MPI_Group &group,
- const int tag,
- MPI_Comm *new_comm)
- {
- const int ierr = MPI_Comm_create_group(comm, group, tag, new_comm);
- AssertThrowMPI(ierr);
- return ierr;
- }
-
-
-
std::vector<IndexSet>
create_ascending_partitioning(
const MPI_Comm comm,
- template <int dim, int spacedim>
- DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
- void Triangulation<dim, spacedim>::load(const std::string &filename,
- const bool autopartition)
- {
- (void)autopartition;
- load(filename);
- }
-
-
-
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
void Triangulation<dim, spacedim>::update_number_cache()
- template <int dim, int spacedim>
- DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
- void Triangulation<dim, spacedim>::load(const std::string &filename,
- const bool autopartition)
- {
- (void)autopartition;
- load(filename);
- }
-
-
-
template <int dim, int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<dim, spacedim>))
void Triangulation<dim, spacedim>::load(
- template <int spacedim>
- DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<1, spacedim>))
- void Triangulation<1, spacedim>::load(const std::string &, const bool)
- {
- DEAL_II_NOT_IMPLEMENTED();
- }
-
-
-
template <int spacedim>
DEAL_II_CXX20_REQUIRES((concepts::is_valid_dim_spacedim<1, spacedim>))
void Triangulation<1, spacedim>::save(const std::string &) const
-template <int dim, int spacedim>
-MappingQ<dim, spacedim>::MappingQ(const unsigned int p, const bool)
- : MappingQ<dim, spacedim>(p)
-{}
-
-
-
template <int dim, int spacedim>
MappingQ<dim, spacedim>::MappingQ(const MappingQ<dim, spacedim> &mapping)
: polynomial_degree(mapping.polynomial_degree)
}
- template <int dim>
- void
- rotate(const double angle,
- const unsigned int axis,
- Triangulation<dim, 3> &triangulation)
- {
- Assert(axis < 3, ExcMessage("Invalid axis given!"));
-
- Tensor<1, 3, double> vector;
- vector[axis] = 1.;
-
- transform(internal::Rotate3d(vector, angle), triangulation);
- }
-
-
template <int dim, int spacedim>
void
scale(const double scaling_factor,
const Tensor<1, deal_II_space_dimension, double> &,
const double,
Triangulation<deal_II_dimension, deal_II_space_dimension> &);
-
- template void
- rotate<deal_II_dimension>(
- const double,
- const unsigned int,
- Triangulation<deal_II_dimension, deal_II_space_dimension> &);
# endif
template void
AssertThrow(ierr == 0, SolverBase::ExcSLEPcError(ierr));
}
- /* --------------- TransformationSpectrumFolding ----------------- */
-
- TransformationSpectrumFolding::AdditionalData::AdditionalData(
- const double shift_parameter)
- : shift_parameter(shift_parameter)
- {}
-
- TransformationSpectrumFolding::TransformationSpectrumFolding(
- const MPI_Comm mpi_communicator,
- const AdditionalData &data)
- : TransformationBase(mpi_communicator)
- , additional_data(data)
- {
- // This feature is only in PETSc/SLEPc versions 3.4 or older, which we no
- // longer support.
- Assert(false,
- ExcMessage(
- "Folding transformation has been removed in SLEPc 3.5.0 and newer."
- " You cannot use this transformation anymore."));
- }
-
/* ------------------- TransformationCayley --------------------- */
TransformationCayley::AdditionalData::AdditionalData(
- template <int dim, int spacedim>
- void
- ParticleHandler<dim, spacedim>::register_store_callback_function()
- {
- register_data_attach();
- }
-
-
-
template <int dim, int spacedim>
void
ParticleHandler<dim, spacedim>::register_data_attach()
}
- template <int dim, int spacedim>
- void
- ParticleHandler<dim, spacedim>::register_load_callback_function(
- const bool serialization)
- {
- notify_ready_to_unpack(serialization);
- }
-
-
-
template <int dim, int spacedim>
void
ParticleHandler<dim, spacedim>::notify_ready_to_unpack(
+++ /dev/null
-// ------------------------------------------------------------------------
-//
-// SPDX-License-Identifier: LGPL-2.1-or-later
-// Copyright (C) 2018 by the deal.II authors
-//
-// This file is part of the deal.II library.
-//
-// Part of the source code is dual licensed under Apache-2.0 WITH
-// LLVM-exception OR LGPL-2.1-or-later. Detailed license information
-// governing the source code and code contributions can be found in
-// LICENSE.md and CONTRIBUTING.md at the top level directory of deal.II.
-//
-// ------------------------------------------------------------------------
-
-
-
-// check that Utilities::MPI::create_group is only collective over the group of
-// processes that actually want to create the communicator.
-// In p4est-2.0, sc_init() leads to a deadlock when MPI_Comm_create_group is
-// called (see https://github.com/cburstedde/p4est/issues/30). Hence, this test
-// also ensures that the treatment of sc_init() is appropriate.
-
-#include "../tests.h"
-
-int
-main(int argc, char *argv[])
-{
- Utilities::MPI::MPI_InitFinalize mpi_init(argc, argv, 1);
- MPILogInitAll log_all;
-
- const MPI_Comm global_comm = MPI_COMM_WORLD;
-
- const unsigned int my_id = Utilities::MPI::this_mpi_process(global_comm);
- const unsigned int n_ranks = Utilities::MPI::n_mpi_processes(global_comm);
-
- // Get the group of processes in MPI_COMM_WORLD
- MPI_Group world_group;
- int ierr = MPI_Comm_group(MPI_COMM_WORLD, &world_group);
- AssertThrowMPI(ierr);
-
- const int n = n_ranks / 2;
- std::vector<int> ranks;
- for (unsigned int i = 0; i < n_ranks; i += 2)
- ranks.push_back(i);
-
- // Construct a group containing all of the even ranks in world_group
- MPI_Group even_group;
- ierr = MPI_Group_incl(world_group, n, ranks.data(), &even_group);
- AssertThrowMPI(ierr);
-
- if (my_id % 2 == 0)
- {
- MPI_Comm group_comm;
- ierr =
- Utilities::MPI::create_group(global_comm, even_group, 0, &group_comm);
- AssertThrowMPI(ierr);
- }
- deallog << "OK" << std::endl;
-}
+++ /dev/null
-
-DEAL:0::OK
-
-DEAL:1::OK
-
-
-DEAL:2::OK
-
data_filter.n_nodes(),
data_filter.n_cells(),
dim,
- spacedim);
+ spacedim,
+ ReferenceCell());
unsigned int n_data_sets = data_filter.n_data_sets();
// The vector names generated here must match those generated in the HDF5 file
parallel::distributed::Triangulation<dim> tr(MPI_COMM_WORLD);
GridGenerator::hyper_cube(tr);
- tr.load(filename.c_str(), false);
+ tr.load(filename.c_str());
if (myid == 0)
{
parallel::distributed::Triangulation<dim> tr(MPI_COMM_WORLD);
GridGenerator::hyper_cube(tr);
- tr.load(filename.c_str(), false);
+ tr.load(filename.c_str());
FE_Q<dim> fe(1);
DoFHandler<dim> dh(tr);
parallel::distributed::Triangulation<dim> tr(MPI_COMM_WORLD);
GridGenerator::hyper_cube(tr);
- tr.load(filename.c_str(), false);
+ tr.load(filename.c_str());
FE_Q<dim> fe(1);
DoFHandler<dim> dh(tr);
deallog << "Setting new velocity of particle "
<< particle->get_id() << ": " << new_velocity
<< std::endl;
- particle->set_properties(make_array_view(new_velocity));
+ particle->set_properties(
+ make_array_view(new_velocity.begin_raw(),
+ new_velocity.end_raw()));
// With the new velocity, we can then also update the location
// of the particle and tell the particle about it.
Vector<double> unrolled(9);
- t.unroll(unrolled);
+ t.unroll(unrolled.data(), unrolled.data() + 9);
deallog << "unrolled:";
for (unsigned i = 0; i < 9; ++i)
deallog << ' ' << unrolled(i);
// cast result to double to profit from zero
// threshold and so on
- t.unroll(unrolled);
+ t.unroll(unrolled.data(), unrolled.data() + 9);
deallog << "unrolled:";
for (unsigned i = 0; i < 9; ++i)
deallog << ' ' << unrolled(i);
// cast result to double to profit from zero
// threshold and so on
- t.unroll(unrolled);
+ t.unroll(unrolled.data(), unrolled.data() + 9);
deallog << "unrolled:";
for (unsigned i = 0; i < 9; ++i)
deallog << ' ' << static_cast<double>(unrolled(i));