Digital Image Correlation Engine
Version 1.0
A modular, high-performance, image correlation tool used to compute full-field displacements and strains from digital images
|
Public Member Functions | |
Local_Shape_Function () | |
base class constructor | |
virtual | ~Local_Shape_Function () |
virtual destructor | |
int_t | num_params () const |
the number of parameters in the shape function | |
std::vector< scalar_t > * | parameters () |
access to the parameter values | |
void | print_parameters () const |
print the parameter values to DEBUG_MSG | |
virtual void | save_fields (Schema *schema, const int_t subset_gid) |
virtual void | reset_fields (Schema *schema) |
void | clone (Teuchos::RCP< Local_Shape_Function > shape_function) |
virtual void | initialize_parameters_from_fields (Schema *schema, const int_t subset_gid) |
virtual void | map (const scalar_t &x, const scalar_t &y, const scalar_t &cx, const scalar_t &cy, scalar_t &out_x, scalar_t &out_y)=0 |
virtual void | add_translation (const scalar_t &u, const scalar_t &v)=0 |
virtual void | insert_motion (const scalar_t &u, const scalar_t &v, const scalar_t &theta)=0 |
virtual void | insert_motion (const scalar_t &u, const scalar_t &v)=0 |
virtual void | clear () |
clear the parameters | |
virtual void | map_to_u_v_theta (const scalar_t &cx, const scalar_t &cy, scalar_t &out_u, scalar_t &out_v, scalar_t &out_theta)=0 |
virtual void | update_params_for_centroid_change (const scalar_t &delta_x, const scalar_t &delta_y)=0 |
scalar_t & | operator() (const DICe::field_enums::Field_Spec &spec) |
scalar_t & | operator() (const size_t index) |
scalar_t | parameter (const DICe::field_enums::Field_Spec &spec) const |
virtual void | residuals (const scalar_t &x, const scalar_t &y, const scalar_t &cx, const scalar_t &cy, const scalar_t &gx, const scalar_t &gy, std::vector< scalar_t > &residuals, const bool use_ref_grads=false)=0 |
void | update (const std::vector< scalar_t > &update) |
virtual bool | test_for_convergence (const std::vector< scalar_t > &old_parameters, const scalar_t &tol) |
Teuchos::RCP< std::vector< scalar_t > > | rcp () |
Teuchos::RCP< std::vector< scalar_t > > | deltas () |
returns a pointer to the vector of delta values for this shape function | |
std::map< DICe::field_enums::Field_Spec, size_t > * | spec_map () |
returns a pointer to the spec map | |
Protected Attributes | |
std::vector< scalar_t > | parameters_ |
a vector that holds the parameters of the shape function | |
std::vector< scalar_t > | deltas_ |
a vector that holds the deltas to use for a simplex method | |
int_t | num_params_ |
the total number of degrees of freedom | |
std::map< DICe::field_enums::Field_Spec, size_t > | spec_map_ |
stores the associated field with each DOF and the corresponding parameter index | |
|
pure virtual |
add the specified translation to the shape function parameter values
u | displacement in x |
v | displacement in y |
Implemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, DICe::Quadratic_Shape_Function, and DICe::Affine_Shape_Function.
void DICe::Local_Shape_Function::clone | ( | Teuchos::RCP< Local_Shape_Function > | shape_function | ) |
clone the parameters values of another shape function
shape_function | the shape function to clone |
|
virtual |
gather the field values for each parameter
schema | pointer to a schema that has the fields |
subset_gid | the id of the subset to use |
Reimplemented in DICe::Affine_Shape_Function.
|
pure virtual |
replace the paramaters associated with u and v
u | input displacement in x |
v | input displacement in y |
Implemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, DICe::Quadratic_Shape_Function, and DICe::Affine_Shape_Function.
|
pure virtual |
replace the paramaters associated with u,v, and theta
u | input displacement in x |
v | input displacement in y |
theta | input rotation |
Implemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, DICe::Quadratic_Shape_Function, and DICe::Affine_Shape_Function.
|
pure virtual |
map the input coordinates to the output coordinates
x | input x coordinate |
y | input y coordinate |
cx | input centroid coordinate (dummy variable for some shape functions) |
cy | input centroid coordinate (dummy variable for some shape functions) |
out_x | mapped x coordinate |
out_y | mapped y coordinate |
Implemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, DICe::Quadratic_Shape_Function, and DICe::Affine_Shape_Function.
|
pure virtual |
converts the current map parameters to u, v, and theta
cx | input centroid coordinate (dummy variable for some shape functions) |
cy | input centroid coordinate (dummy variable for some shape functions) |
out_u | returns the displacement x value |
out_v | returns the displacement y value |
out_theta | returns the rotation |
Implemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, DICe::Quadratic_Shape_Function, and DICe::Affine_Shape_Function.
|
inline |
returns a reference to the given field spec location in the parameter vector
spec | the field spec |
|
inline |
returns a reference to the given field spec location in the parameter vector
index | index of the vector entry |
|
inline |
returns the value the given field spec location in the parameter vector if it exists or zero if it does not
spec | the field spec |
|
virtual |
clears all the fields associated with this shape function
schema | pointer to a schema that holds the mesh with the fields |
Reimplemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, and DICe::Quadratic_Shape_Function.
|
pure virtual |
method that computes the residuals for this shape function
x | x-coordinate of the point to compute for |
y | y-coordinate of the point to compute for |
cx | input centroid coordinate (dummy variable for some shape functions) |
cy | input centroid coordinate (dummy variable for some shape functions) |
gx | x image gradient |
gy | y image gradient |
residuals | [out] the vector to store the residuals in |
use_ref_grads | true if the gradients should be used from the reference image (so they need to be adjusted for the current def map) |
Implemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, DICe::Quadratic_Shape_Function, and DICe::Affine_Shape_Function.
|
virtual |
save off the parameters to the correct fields
schema | the schema that has the mesh with associated fields |
subset_gid | the global id of the subset to save the fields for |
Reimplemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, and DICe::Quadratic_Shape_Function.
|
virtual |
returns true if the solution is converged
old_parameters | vector of the previous guess for the parameters |
tol | the solution tolerance |
Reimplemented in DICe::Affine_Shape_Function.
void DICe::Local_Shape_Function::update | ( | const std::vector< scalar_t > & | update | ) |
update the parameter values based on an input vector
update | reference to the update vector |
|
pure virtual |
converts the mapping from referencing one centroid to another
delta_x | change in centroid x location |
delta_y | change in centroid y location |
Implemented in DICe::Rigid_Body_Shape_Function, DICe::Projection_Shape_Function, DICe::Quadratic_Shape_Function, and DICe::Affine_Shape_Function.