[Insight-users] Question regarding itkFEMRegistrationFilter
Gheorghe Postelnicu
gheorghe.postelnicu at gmail.com
Tue Nov 29 15:26:32 EST 2005
Hi,
I have 2 questions regarding the ApplyLoads function in the implementation
of itkFEMRegistrationFilter:
1. in order to assign the BC to elements, there is a brute-force iteration
through the elements (for each boundary condition). Wouldn't it make sense
to use the interpolation grid in this situation?
2. I am a little confused about the names of the points in the LoadLandmark
class; if I get it correctly,
- source = undeformed configuration
- point = deformed configuration
However, in the ApplyLoads function, namely in the following code snippet:
-----------------
pu=m_LandmarkArray[lmind]->GetSource();
pd=m_LandmarkArray[lmind]->GetPoint();
for (Element::ArrayType::const_iterator n = mySolver.el.begin();
n!=mySolver.el.end() && !isFound; n++)
{
if ( (*n)->GetLocalFromGlobalCoordinates(pu, pd ) )
{
isFound=true;
m_LandmarkArray[lmind]->SetPoint(pd);
// std::cout << " load local pt " <<
m_LandmarkArray[lmind]->GetPoint() << std::endl;
m_LandmarkArray[lmind]->el[0]=( ( &**n ) );
}
}
---------------
pu seems to represent the position in the undeformed configuration
(global coordinates), is then converted to local coordinates in the pd
variable and then assigned as point. So I am quite confused about this part
of the code:
- why is ever pd initialized?
- why is pu translated into local coordinates and then overwrites pd?
Thanks,
--
Gheorghe Postelnicu, PhD
MGH, Harvard Medical School
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://public.kitware.com/pipermail/insight-users/attachments/20051129/002ca742/attachment.html
More information about the Insight-users
mailing list