output_data.shape_values(k,i) = fe_data.shape_values[k][i];
if (flags & update_gradients && cell_similarity != CellSimilarity::translation)
- mapping.transform(fe_data.shape_gradients[k],
- output_data.shape_gradients[k],
- mapping_internal, mapping_covariant);
+ mapping.transform (fe_data.shape_gradients[k],
+ mapping_covariant,
+ mapping_internal,
+ output_data.shape_gradients[k]);
if (flags & update_hessians && cell_similarity != CellSimilarity::translation)
{
correct_untransformed_hessians (fe_data.untransformed_shape_hessians,
mapping_data, output_data, quadrature.size(), k);
- mapping.transform(fe_data.untransformed_shape_hessians,
- output_data.shape_hessians[k],
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (fe_data.untransformed_shape_hessians,
+ mapping_covariant_gradient,
+ mapping_internal,
+ output_data.shape_hessians[k]);
}
}
}
output_data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform(make_slice(fe_data.shape_gradients[k], offset, quadrature.size()),
- output_data.shape_gradients[k],
- mapping_internal, mapping_covariant);
+ mapping.transform (make_slice(fe_data.shape_gradients[k], offset, quadrature.size()),
+ mapping_covariant,
+ mapping_internal,
+ output_data.shape_gradients[k]);
if (flags & update_hessians)
{
( fe_data.untransformed_shape_hessians, offset , quadrature.size()),
mapping_data, output_data, quadrature.size(), k);
- mapping.transform(make_slice(fe_data.untransformed_shape_hessians, offset, quadrature.size()),
- output_data.shape_hessians[k], mapping_internal, mapping_covariant_gradient);
+ mapping.transform (make_slice(fe_data.untransformed_shape_hessians,
+ offset,
+ quadrature.size()),
+ mapping_covariant_gradient,
+ mapping_internal,
+ output_data.shape_hessians[k]);
}
}
}
output_data.shape_values(k,i) = fe_data.shape_values[k][i+offset];
if (flags & update_gradients)
- mapping.transform(make_slice(fe_data.shape_gradients[k], offset, quadrature.size()),
- output_data.shape_gradients[k],
- mapping_internal, mapping_covariant);
+ mapping.transform (make_slice(fe_data.shape_gradients[k], offset, quadrature.size()),
+ mapping_covariant,
+ mapping_internal,
+ output_data.shape_gradients[k]);
if (flags & update_hessians)
{
}
correct_untransformed_hessians(VectorSlice< std::vector<Tensor<2,dim> > >
- ( fe_data.untransformed_shape_hessians, offset , quadrature.size()),
- mapping_data, output_data, quadrature.size(), k);
-
- mapping.transform(make_slice(fe_data.untransformed_shape_hessians, offset, quadrature.size()),
- output_data.shape_hessians[k], mapping_internal, mapping_covariant_gradient);
+ (fe_data.untransformed_shape_hessians,
+ offset,
+ quadrature.size()),
+ mapping_data,
+ output_data,
+ quadrature.size(),
+ k);
+
+ mapping.transform (make_slice(fe_data.untransformed_shape_hessians,
+ offset,
+ quadrature.size()),
+ mapping_covariant_gradient,
+ mapping_internal,
+ output_data.shape_hessians[k]);
}
}
}
*/
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const = 0;
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const = 0;
virtual
void
transform (const VectorSlice<const std::vector< DerivativeForm<1, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const = 0;
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const = 0;
/**
*/
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const = 0;
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const = 0;
/**
* Transform a tensor field from the reference cell to the physical cell.
virtual
void
transform (const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const = 0;
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const = 0;
/**
* Transform a field of 3-differential forms from the reference cell to the
*/
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const = 0;
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const = 0;
/**
* @}
*/
// for documentation, see the Mapping base class
- virtual void
- transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
+ virtual
+ void
+ transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const;
// for documentation, see the Mapping base class
- virtual void
+ virtual
+ void
transform (const VectorSlice<const std::vector<DerivativeForm<1, dim,spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
transform (const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const;
/**
* @}
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<DerivativeForm<1, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ transform (const VectorSlice<const std::vector<DerivativeForm<1, dim, spacedim> > > input,
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
transform (const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const;
/**
* @}
const typename Triangulation<dim,spacedim>::cell_iterator &cell,
const Point<spacedim> &p) const;
- virtual void
- transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
+ virtual
+ void
+ transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const;
- virtual void
- transform (const VectorSlice<const std::vector<DerivativeForm<1, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ virtual
+ void
+ transform (const VectorSlice<const std::vector<DerivativeForm<1, dim, spacedim> > > input,
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
/**
* Return the degree of the mapping, i.e. the value which was passed to the
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<DerivativeForm<1, dim,spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ transform (const VectorSlice<const std::vector<DerivativeForm<1, dim,spacedim> > > input,
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
transform (const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ const MappingType type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &internal,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const;
// for documentation, see the Mapping base class
virtual
void
- transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
+ transform (const VectorSlice<const std::vector<Tensor<3, dim> > > input,
+ const MappingType type,
const typename Mapping<dim,spacedim>::InternalDataBase &internal,
- const MappingType type) const;
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const;
/**
* @}
// cell
for (unsigned int d=0; d<spacedim; ++d)
{
- mapping.transform (diff_quot[d], diff_quot2, mapping_internal, mapping_covariant);
+ mapping.transform (diff_quot[d], mapping_covariant, mapping_internal, diff_quot2);
for (unsigned int q=0; q<n_q_points; ++q)
for (unsigned int d1=0; d1<spacedim; ++d1)
output_data.shape_values(k,i) = fe_data.shape_values[k][i];
if (flags & update_gradients && cell_similarity != CellSimilarity::translation)
- mapping.transform(fe_data.shape_gradients[k],
- output_data.shape_gradients[k],
- mapping_internal, mapping_covariant);
+ mapping.transform (fe_data.shape_gradients[k],
+ mapping_covariant,
+ mapping_internal,
+ output_data.shape_gradients[k]);
if (flags & update_hessians && cell_similarity != CellSimilarity::translation)
{
correct_untransformed_hessians (fe_data.untransformed_shape_hessians,
mapping_data, output_data, quadrature.size(), k);
- mapping.transform(fe_data.untransformed_shape_hessians,
- output_data.shape_hessians[k],
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (fe_data.untransformed_shape_hessians,
+ mapping_covariant_gradient,
+ mapping_internal,
+ output_data.shape_hessians[k]);
}
}
}
output_data.shape_values(k,i) = fe_data.shape_values[k][i];
if (flags & update_gradients && cell_similarity != CellSimilarity::translation)
- mapping.transform(fe_data.shape_gradients[k],
- output_data.shape_gradients[k],
- mapping_internal, mapping_covariant);
+ mapping.transform (fe_data.shape_gradients[k],
+ mapping_covariant,
+ mapping_internal,
+ output_data.shape_gradients[k]);
if (flags & update_hessians && cell_similarity != CellSimilarity::translation)
{
correct_untransformed_hessians (fe_data.untransformed_shape_hessians,
mapping_data, output_data, quadrature.size(), k);
- mapping.transform(fe_data.untransformed_shape_hessians,
- output_data.shape_hessians[k],
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (fe_data.untransformed_shape_hessians,
+ mapping_covariant_gradient,
+ mapping_internal,
+ output_data.shape_hessians[k]);
}
}
}
output_data.shape_values(k,i) = fe_data.shape_values[k][i];
if (flags & update_gradients && cell_similarity != CellSimilarity::translation)
- mapping.transform(fe_data.shape_gradients[k],
- output_data.shape_gradients[k],
- mapping_internal, mapping_covariant);
+ mapping.transform (fe_data.shape_gradients[k],
+ mapping_covariant,
+ mapping_internal,
+ output_data.shape_gradients[k]);
if (flags & update_hessians && cell_similarity != CellSimilarity::translation)
{
correct_untransformed_hessians (fe_data.untransformed_shape_hessians,
mapping_data, output_data, quadrature.size(), k);
- mapping.transform(fe_data.untransformed_shape_hessians,
- output_data.shape_hessians[k],
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (fe_data.untransformed_shape_hessians,
+ mapping_covariant_gradient,
+ mapping_internal,
+ output_data.shape_hessians[k]);
}
}
}
if (flags & update_gradients && cell_similarity != CellSimilarity::translation)
- mapping.transform(fe_data.shape_gradients[k],
- output_data.shape_gradients[k],
- mapping_internal, mapping_covariant);
+ mapping.transform (fe_data.shape_gradients[k],
+ mapping_covariant,
+ mapping_internal,
+ output_data.shape_gradients[k]);
if (flags & update_hessians && cell_similarity != CellSimilarity::translation)
{
correct_untransformed_hessians (fe_data.untransformed_shape_hessians,
mapping_data, output_data, quadrature.size(), k);
- mapping.transform(fe_data.untransformed_shape_hessians,
- output_data.shape_hessians[k],
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (fe_data.untransformed_shape_hessians,
+ mapping_covariant_gradient,
+ mapping_internal,
+ output_data.shape_hessians[k]);
}
}
}
if ( (flags & update_gradients) && mapping_type != mapping_none )
- mapping.transform(mapping_data.jacobian_grads, fe_data.transformed_jacobian_grads,
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (mapping_data.jacobian_grads,
+ mapping_covariant_gradient,
+ mapping_internal,
+ fe_data.transformed_jacobian_grads);
for (unsigned int i=0; i<this->dofs_per_cell; ++i)
{
case mapping_covariant:
case mapping_contravariant:
{
- mapping.transform(fe_data.shape_values[i],
- fe_data.transformed_shape_values, mapping_internal, mapping_type);
+ mapping.transform (fe_data.shape_values[i],
+ mapping_type,
+ mapping_internal,
+ fe_data.transformed_shape_values);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
case mapping_raviart_thomas:
case mapping_piola:
{
- mapping.transform(fe_data.shape_values[i], fe_data.transformed_shape_values,
- mapping_internal, mapping_piola);
+ mapping.transform (fe_data.shape_values[i],
+ mapping_piola,
+ mapping_internal,
+ fe_data.transformed_shape_values);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
output_data.shape_values(first+d,k)
case mapping_nedelec:
{
- mapping.transform (fe_data.shape_values[i], fe_data.transformed_shape_values,
- mapping_internal, mapping_covariant);
+ mapping.transform (fe_data.shape_values[i],
+ mapping_covariant,
+ mapping_internal,
+ fe_data.transformed_shape_values);
for (unsigned int k = 0; k < n_q_points; ++k)
for (unsigned int d = 0; d < dim; ++d)
{
case mapping_none:
{
- mapping.transform(fe_data.shape_grads[i], fe_data.transformed_shape_grads,
- mapping_internal, mapping_covariant);
+ mapping.transform (fe_data.shape_grads[i],
+ mapping_covariant,
+ mapping_internal,
+ fe_data.transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
output_data.shape_gradients[first+d][k] = fe_data.transformed_shape_grads[k][d];
}
case mapping_covariant:
{
- mapping.transform(fe_data.shape_grads[i], fe_data.transformed_shape_grads,
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (fe_data.shape_grads[i],
+ mapping_covariant_gradient,
+ mapping_internal,
+ fe_data.transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
}
case mapping_contravariant:
{
- mapping.transform(fe_data.shape_grads[i], fe_data.transformed_shape_grads,
- mapping_internal, mapping_contravariant_gradient);
+ mapping.transform(fe_data.shape_grads[i],
+ mapping_contravariant_gradient,
+ mapping_internal,
+ fe_data.transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
{
for (unsigned int k=0; k<n_q_points; ++k)
fe_data.untransformed_shape_grads[k] = fe_data.shape_grads[i][k];
- mapping.transform(fe_data.untransformed_shape_grads, fe_data.transformed_shape_grads,
- mapping_internal, mapping_piola_gradient);
+ mapping.transform (fe_data.untransformed_shape_grads,
+ mapping_piola_gradient,
+ mapping_internal,
+ fe_data.transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
for (unsigned int k=0; k<n_q_points; ++k)
fe_data.untransformed_shape_grads[k] = fe_data.shape_grads[i][k];
- mapping.transform (fe_data.untransformed_shape_grads,fe_data.transformed_shape_grads,
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (fe_data.untransformed_shape_grads,
+ mapping_covariant_gradient,
+ mapping_internal,
+ fe_data.transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
get_face_sign_change_nedelec (cell, this->dofs_per_face, fe_data.sign_change);
if ( (flags & update_gradients) && mapping_type != mapping_none )
- mapping.transform(mapping_data.jacobian_grads,
- VectorSlice< std::vector<Tensor<3,spacedim> > >
- (fe_data.transformed_jacobian_grads, offset, n_q_points),
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (mapping_data.jacobian_grads,
+ mapping_covariant_gradient,
+ mapping_internal,
+ VectorSlice< std::vector<Tensor<3,spacedim> > >
+ (fe_data.transformed_jacobian_grads, offset, n_q_points));
for (unsigned int i=0; i<this->dofs_per_cell; ++i)
{
{
// Use auxiliary vector
// for transformation
- mapping.transform(make_slice(fe_data.shape_values[i], offset, n_q_points),
- transformed_shape_values, mapping_internal, mapping_type);
+ mapping.transform (make_slice(fe_data.shape_values[i], offset, n_q_points),
+ mapping_type,
+ mapping_internal,
+ transformed_shape_values);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
case mapping_piola:
{
- mapping.transform(make_slice(fe_data.shape_values[i], offset, n_q_points),
- transformed_shape_values, mapping_internal, mapping_piola);
+ mapping.transform (make_slice(fe_data.shape_values[i], offset, n_q_points),
+ mapping_piola,
+ mapping_internal,
+ transformed_shape_values);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
output_data.shape_values(first+d,k)
case mapping_nedelec:
{
mapping.transform (make_slice (fe_data.shape_values[i], offset, n_q_points),
- transformed_shape_values, mapping_internal, mapping_covariant);
+ mapping_covariant,
+ mapping_internal,
+ transformed_shape_values);
for (unsigned int k = 0; k < n_q_points; ++k)
for (unsigned int d = 0; d < dim; ++d)
{
case mapping_none:
{
- mapping.transform(make_slice(fe_data.shape_grads[i], offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_covariant);
+ mapping.transform (make_slice(fe_data.shape_grads[i], offset, n_q_points),
+ mapping_covariant,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
output_data.shape_gradients[first+d][k] = transformed_shape_grads[k][d];
case mapping_covariant:
{
- mapping.transform(make_slice(fe_data.shape_grads[i], offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_covariant_gradient);
+ mapping.transform (make_slice(fe_data.shape_grads[i], offset, n_q_points),
+ mapping_covariant_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
}
case mapping_contravariant:
{
- mapping.transform(make_slice(fe_data.shape_grads[i], offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_contravariant_gradient);
+ mapping.transform (make_slice(fe_data.shape_grads[i], offset, n_q_points),
+ mapping_contravariant_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
{
for (unsigned int k=0; k<n_q_points; ++k)
fe_data.untransformed_shape_grads[k+offset] = fe_data.shape_grads[i][k+offset];
- mapping.transform(make_slice(fe_data.untransformed_shape_grads, offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_piola_gradient);
+ mapping.transform (make_slice(fe_data.untransformed_shape_grads, offset, n_q_points),
+ mapping_piola_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
fe_data.untransformed_shape_grads[k+offset] = fe_data.shape_grads[i][k+offset];
mapping.transform (make_slice (fe_data.untransformed_shape_grads, offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_covariant_gradient);
+ mapping_covariant_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
get_face_sign_change_nedelec (cell, this->dofs_per_face, fe_data.sign_change);
if ( (flags & update_gradients) && mapping_type != mapping_none)
- mapping.transform(mapping_data.jacobian_grads,
- VectorSlice< std::vector<Tensor<3,spacedim> > >
- (fe_data.transformed_jacobian_grads, offset, n_q_points),
- mapping_internal, mapping_covariant_gradient);
+ mapping.transform (mapping_data.jacobian_grads,
+ mapping_covariant_gradient,
+ mapping_internal,
+ VectorSlice< std::vector<Tensor<3,spacedim> > >
+ (fe_data.transformed_jacobian_grads, offset, n_q_points));
for (unsigned int i=0; i<this->dofs_per_cell; ++i)
{
// Use auxiliary vector for
// transformation
- mapping.transform(make_slice(fe_data.shape_values[i], offset, n_q_points),
- transformed_shape_values, mapping_internal, mapping_type);
+ mapping.transform (make_slice(fe_data.shape_values[i], offset, n_q_points),
+ mapping_type,
+ mapping_internal,
+ transformed_shape_values);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
case mapping_raviart_thomas:
case mapping_piola:
{
- mapping.transform(make_slice(fe_data.shape_values[i], offset, n_q_points),
- transformed_shape_values, mapping_internal, mapping_piola);
+ mapping.transform (make_slice(fe_data.shape_values[i], offset, n_q_points),
+ mapping_piola,
+ mapping_internal,
+ transformed_shape_values);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
output_data.shape_values(first+d,k)
case mapping_nedelec:
{
mapping.transform (make_slice (fe_data.shape_values[i], offset, n_q_points),
- transformed_shape_values, mapping_internal, mapping_covariant);
+ mapping_covariant,
+ mapping_internal,
+ transformed_shape_values);
for (unsigned int k = 0; k < n_q_points; ++k)
for (unsigned int d = 0; d < dim; ++d)
{
case mapping_none:
{
- mapping.transform(make_slice(fe_data.shape_grads[i], offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_covariant);
+ mapping.transform (make_slice(fe_data.shape_grads[i], offset, n_q_points),
+ mapping_covariant,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<dim; ++d)
output_data.shape_gradients[first+d][k] = transformed_shape_grads[k][d];
case mapping_covariant:
{
- mapping.transform(make_slice(fe_data.shape_grads[i], offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_covariant_gradient);
+ mapping.transform (make_slice(fe_data.shape_grads[i], offset, n_q_points),
+ mapping_covariant_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
case mapping_contravariant:
{
- mapping.transform(make_slice(fe_data.shape_grads[i], offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_contravariant_gradient);
+ mapping.transform (make_slice(fe_data.shape_grads[i], offset, n_q_points),
+ mapping_contravariant_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
for (unsigned int k=0; k<n_q_points; ++k)
fe_data.untransformed_shape_grads[k+offset] = fe_data.shape_grads[i][k+offset];
- mapping.transform(make_slice(fe_data.untransformed_shape_grads, offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_piola_gradient);
+ mapping.transform (make_slice(fe_data.untransformed_shape_grads, offset, n_q_points),
+ mapping_piola_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
for (unsigned int d=0; d<spacedim; ++d)
fe_data.untransformed_shape_grads[k+offset] = fe_data.shape_grads[i][k+offset];
mapping.transform (make_slice (fe_data.untransformed_shape_grads, offset, n_q_points),
- transformed_shape_grads, mapping_internal, mapping_covariant_gradient);
+ mapping_covariant_gradient,
+ mapping_internal,
+ transformed_shape_grads);
for (unsigned int k=0; k<n_q_points; ++k)
{
VectorSlice<const std::vector<Tensor<1,dim> > > src(original);
VectorSlice<std::vector<Tensor<1,spacedim> > > dst(transformed);
- mapping->transform(src, dst, *mapping_data, type);
+ mapping->transform(src, type,*mapping_data, dst);
}
template<int dim, int spacedim>
void
-MappingCartesian<dim,spacedim>::transform (
- const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingCartesian<dim,spacedim>::
+transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
Assert (dynamic_cast<const InternalData *>(&mapping_data) != 0,
template<int dim, int spacedim>
void
-MappingCartesian<dim,spacedim>::transform (
- const VectorSlice<const std::vector<DerivativeForm<1, dim,spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingCartesian<dim,spacedim>::
+transform (const VectorSlice<const std::vector<DerivativeForm<1, dim,spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
Assert (dynamic_cast<const InternalData *>(&mapping_data) != 0,
template<int dim, int spacedim>
void
-MappingCartesian<dim,spacedim>::transform (
- const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2, spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingCartesian<dim,spacedim>::
+transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2, spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
template<int dim, int spacedim>
void
-MappingCartesian<dim,spacedim>::transform (
- const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingCartesian<dim,spacedim>::
+transform (const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
template<int dim, int spacedim>
void
-MappingCartesian<dim,spacedim>::transform (
- const VectorSlice<const std::vector< Tensor<3,dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingCartesian<dim,spacedim>::
+transform (const VectorSlice<const std::vector< Tensor<3,dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
ExcInternalError());
mapping.transform (data.unit_tangentials[face_no+GeometryInfo<dim>::faces_per_cell*d],
- data.aux[d],
+ mapping_contravariant,
data,
- mapping_contravariant);
+ data.aux[d]);
}
// if dim==spacedim, we can use the unit tangentials to compute the
template<int dim, int spacedim, int rank, class VECTOR, class DH>
void
transform_fields(const VectorSlice<const std::vector<Tensor<rank,dim> > > input,
- VectorSlice<std::vector<Tensor<rank,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type)
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<rank,spacedim> > > output)
{
AssertDimension (input.size(), output.size());
Assert ((dynamic_cast<const typename MappingFEField<dim,spacedim,VECTOR,DH>::InternalData *>(&mapping_data) != 0),
template<int dim, int spacedim, int rank, class VECTOR, class DH>
void
transform_differential_forms(const VectorSlice<const std::vector<DerivativeForm<rank, dim,spacedim> > > input,
- VectorSlice<std::vector<Tensor<rank+1, spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type)
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<rank+1, spacedim> > > output)
{
AssertDimension (input.size(), output.size());
template<int dim, int spacedim, class VECTOR, class DH>
void
-MappingFEField<dim,spacedim,VECTOR,DH>::transform (
- const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingFEField<dim,spacedim,VECTOR,DH>::
+transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
- transform_fields<dim,spacedim,1,VECTOR,DH>(input, output, mapping_data, mapping_type);
+ transform_fields<dim,spacedim,1,VECTOR,DH>(input, mapping_type, mapping_data, output);
}
template<int dim, int spacedim, class VECTOR, class DH>
void
-MappingFEField<dim,spacedim,VECTOR,DH>::transform (
- const VectorSlice<const std::vector<DerivativeForm<1, dim ,spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingFEField<dim,spacedim,VECTOR,DH>::
+transform (const VectorSlice<const std::vector<DerivativeForm<1, dim ,spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
- transform_differential_forms<dim,spacedim,1,VECTOR,DH>(input, output, mapping_data, mapping_type);
-
+ transform_differential_forms<dim,spacedim,1,VECTOR,DH>(input, mapping_type, mapping_data, output);
}
+
template<int dim, int spacedim, class VECTOR, class DH>
-void MappingFEField<dim,spacedim,VECTOR,DH>::transform
-(const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType) const
+void
+MappingFEField<dim,spacedim,VECTOR,DH>::
+transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const
{
(void)input;
(void)output;
template<int dim, int spacedim, class VECTOR, class DH>
-void MappingFEField<dim,spacedim,VECTOR,DH>::transform (
- const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+void
+MappingFEField<dim,spacedim,VECTOR,DH>::
+transform (const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
}
return;
}
+
default:
Assert(false, ExcNotImplemented());
}
}
+
+
template<int dim, int spacedim, class VECTOR, class DH>
-void MappingFEField<dim,spacedim,VECTOR,DH>::transform (
- const VectorSlice<const std::vector< Tensor<3,dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType /*mapping_type*/) const
+void
+MappingFEField<dim,spacedim,VECTOR,DH>::
+transform (const VectorSlice<const std::vector< Tensor<3,dim> > > input,
+ const MappingType /*mapping_type*/,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const
{
(void)input;
}
+
template<int dim, int spacedim, class VECTOR, class DH>
Point<spacedim>
MappingFEField<dim,spacedim,VECTOR,DH>::
template<int dim, int spacedim>
void
-MappingQ<dim,spacedim>::transform (
- const VectorSlice<const std::vector<Tensor<1,dim> > > input,
- VectorSlice<std::vector<Tensor<1,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingQ<dim,spacedim>::
+transform (const VectorSlice<const std::vector<Tensor<1,dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<1,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
// The data object may be just a MappingQ1::InternalData, so we have to test
}
// Now, q1_data should have the right tensors in it and we call the base
// classes transform function
- MappingQ1<dim,spacedim>::transform(input, output, *q1_data, mapping_type);
+ MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
template<int dim, int spacedim>
void
-MappingQ<dim,spacedim>::transform (
- const VectorSlice<const std::vector<DerivativeForm<1, dim ,spacedim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingQ<dim,spacedim>::
+transform (const VectorSlice<const std::vector<DerivativeForm<1, dim ,spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
// The data object may be just a MappingQ1::InternalData, so we have to test
}
// Now, q1_data should have the right tensors in it and we call the base
// classes transform function
- MappingQ1<dim,spacedim>::transform(input, output, *q1_data, mapping_type);
+ MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
template<int dim, int spacedim>
-void MappingQ<dim,spacedim>::transform
-(const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+void MappingQ<dim,spacedim>::
+transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
// The data object may be just a MappingQ1::InternalData, so we have to test
}
// Now, q1_data should have the right tensors in it and we call the base
// classes transform function
- MappingQ1<dim,spacedim>::transform(input, output, *q1_data, mapping_type);
+ MappingQ1<dim,spacedim>::transform(input, mapping_type, *q1_data, output);
}
ExcInternalError());
mapping.transform (data.unit_tangentials[face_no+GeometryInfo<dim>::faces_per_cell*d],
- data.aux[d],
+ mapping_contravariant,
data,
- mapping_contravariant);
+ data.aux[d]);
}
// if dim==spacedim, we can use the unit tangentials to compute the
template <int dim, int spacedim, int rank>
void
transform_fields(const VectorSlice<const std::vector<Tensor<rank,dim> > > input,
- VectorSlice<std::vector<Tensor<rank,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type)
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<rank,spacedim> > > output)
{
AssertDimension (input.size(), output.size());
Assert ((dynamic_cast<const typename MappingQ1<dim,spacedim>::InternalData *>(&mapping_data) != 0),
template <int dim, int spacedim, int rank>
void
transform_gradients(const VectorSlice<const std::vector<Tensor<rank,dim> > > input,
- VectorSlice<std::vector<Tensor<rank,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type)
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<rank,spacedim> > > output)
{
AssertDimension (input.size(), output.size());
Assert ((dynamic_cast<const typename MappingQ1<dim,spacedim>::InternalData *>(&mapping_data) != 0),
template <int dim, int spacedim>
void
- transform_hessians(const VectorSlice<const std::vector<Tensor<3,dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
+ transform_hessians(const VectorSlice<const std::vector<Tensor<3,dim> > > input,
+ const MappingType mapping_type,
const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type)
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output)
{
AssertDimension (input.size(), output.size());
Assert ((dynamic_cast<const typename MappingQ1<dim,spacedim>::InternalData *>(&mapping_data) != 0),
- template <int dim, int spacedim, int rank>
+ template<int dim, int spacedim, int rank>
void
- transform_differential_forms(const VectorSlice<const std::vector<DerivativeForm<rank, dim,spacedim> > > input,
- VectorSlice<std::vector<Tensor<rank+1, spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type)
+ transform_differential_forms(const VectorSlice<const std::vector<DerivativeForm<rank, dim,spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<rank+1, spacedim> > > output)
{
AssertDimension (input.size(), output.size());
Assert ((dynamic_cast<const typename MappingQ1<dim,spacedim>::InternalData *>(&mapping_data) != 0),
template<int dim, int spacedim>
void
-MappingQ1<dim,spacedim>::transform (
- const VectorSlice<const std::vector<Tensor<1, dim> > > input,
- VectorSlice<std::vector<Tensor<1, spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingQ1<dim,spacedim>::
+transform (const VectorSlice<const std::vector<Tensor<1, dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<1, spacedim> > > output) const
{
- transform_fields(input, output, mapping_data, mapping_type);
+ transform_fields(input, mapping_type, mapping_data, output);
}
template<int dim, int spacedim>
void
-MappingQ1<dim,spacedim>::transform (
- const VectorSlice<const std::vector<DerivativeForm<1, dim,spacedim> > > input,
- VectorSlice<std::vector<Tensor<2, spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingQ1<dim,spacedim>::
+transform (const VectorSlice<const std::vector<DerivativeForm<1, dim,spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2, spacedim> > > output) const
{
- transform_differential_forms(input, output, mapping_data, mapping_type);
+ transform_differential_forms(input, mapping_type, mapping_data, output);
}
template<int dim, int spacedim>
void
-MappingQ1<dim,spacedim>::transform (
- const VectorSlice<const std::vector<Tensor<2, dim> > > input,
- VectorSlice<std::vector<Tensor<2, spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingQ1<dim,spacedim>::
+transform (const VectorSlice<const std::vector<Tensor<2, dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<2, spacedim> > > output) const
{
switch (mapping_type)
{
case mapping_contravariant:
- transform_fields(input, output, mapping_data, mapping_type);
+ transform_fields(input, mapping_type, mapping_data, output);
return;
case mapping_piola_gradient:
case mapping_contravariant_gradient:
case mapping_covariant_gradient:
- transform_gradients(input, output, mapping_data, mapping_type);
+ transform_gradients(input, mapping_type, mapping_data, output);
return;
default:
Assert(false, ExcNotImplemented());
template<int dim, int spacedim>
void
-MappingQ1<dim,spacedim>::transform (
- const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingQ1<dim,spacedim>::
+transform (const VectorSlice<const std::vector< DerivativeForm<2, dim, spacedim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const
{
AssertDimension (input.size(), output.size());
template<int dim, int spacedim>
void
-MappingQ1<dim,spacedim>::transform (
- const VectorSlice<const std::vector< Tensor<3,dim> > > input,
- VectorSlice<std::vector<Tensor<3,spacedim> > > output,
- const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
- const MappingType mapping_type) const
+MappingQ1<dim,spacedim>::
+transform (const VectorSlice<const std::vector< Tensor<3,dim> > > input,
+ const MappingType mapping_type,
+ const typename Mapping<dim,spacedim>::InternalDataBase &mapping_data,
+ VectorSlice<std::vector<Tensor<3,spacedim> > > output) const
{
switch (mapping_type)
case mapping_piola_hessian:
case mapping_contravariant_hessian:
case mapping_covariant_hessian:
- transform_hessians(input, output, mapping_data, mapping_type);
+ transform_hessians(input, mapping_type, mapping_data, output);
return;
default:
Assert(false, ExcNotImplemented());