<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta name="robots" content="noindex"> <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>ITK: itk::fem::Solution Class Reference</title> <link href="DoxygenStyle.css" rel="stylesheet" type="text/css"> </head><body bgcolor="#ffffff"> <!-- Section customized for INSIGHT : Tue Jul 17 01:02:45 2001 --> <center> <a href="index.html" class="qindex">Main Page</a> <a href="modules.html" class="qindex">Groups</a> <a href="namespaces.html" class="qindex">Namespace List</a> <a href="hierarchy.html" class="qindex">Class Hierarchy</a> <a href="classes.html" class="qindex">Alphabetical List</a> <a href="annotated.html" class="qindex">Compound List</a> <a href="files.html" class="qindex">File List</a> <a href="namespacemembers.html" class="qindex">Namespace Members</a> <a href="functions.html" class="qindex">Compound Members</a> <a href="globals.html" class="qindex">File Members</a> <a href="pages.html" class="qindex">Concepts</a></center> <!-- Generated by Doxygen 1.5.9 --> <div class="navpath"><a class="el" href="namespaceitk.html">itk</a>::<a class="el" href="namespaceitk_1_1fem.html">fem</a>::<a class="el" href="classitk_1_1fem_1_1Solution.html">Solution</a> </div> <div class="contents"> <h1>itk::fem::Solution Class Reference</h1><!-- doxytag: class="itk::fem::Solution" -->Provides functions to access the values of the solution vector. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for itk::fem::Solution:</div> <div class="dynsection"> <p><center><img src="classitk_1_1fem_1_1Solution__inherit__graph.png" border="0" usemap="#itk_1_1fem_1_1Solution__inherit__map" alt="Inheritance graph"></center> <map name="itk_1_1fem_1_1Solution__inherit__map"> <area shape="rect" id="node3" href="classitk_1_1fem_1_1LinearSystemWrapper.html" title="Defines all functions required by Solver class to allocate, assemble and solve a..." alt="" coords="193,59,425,88"><area shape="rect" id="node5" href="classitk_1_1fem_1_1LinearSystemWrapperDenseVNL.html" title="LinearSystemWrapper class that uses VNL numeric library functions to define a sparse..." alt="" coords="475,5,779,35"><area shape="rect" id="node7" href="classitk_1_1fem_1_1LinearSystemWrapperItpack.html" title="LinearSystemWrapper class that uses Itpack numeric library functions to define and..." alt="" coords="489,59,764,88"><area shape="rect" id="node9" href="classitk_1_1fem_1_1LinearSystemWrapperVNL.html" title="LinearSystemWrapper class that uses VNL numeric library functions to define a sparse..." alt="" coords="497,112,756,141"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <p> <a href="classitk_1_1fem_1_1Solution-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Types</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef const <a class="el" href="classitk_1_1fem_1_1Solution.html">Self</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1Solution.html#d9794f489942299543f47e3b774d1675">ConstPointer</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef double </td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1Solution.html#c95fdd34e9d556c92091685c952d5397">Float</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classitk_1_1fem_1_1Solution.html">Self</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1Solution.html#e6ed007b9637dcdfa2ea13982bf073db">Pointer</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classitk_1_1fem_1_1Solution.html">Solution</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1Solution.html#ab39d466b5946f15e922841baf975b99">Self</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classitk_1_1fem_1_1Solution.html">Solution</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1Solution.html#d5a788cadd1fd6a6c8a15b93076ddc97">Superclass</a></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classitk_1_1fem_1_1Solution.html#c95fdd34e9d556c92091685c952d5397">Float</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1Solution.html#4d4ea59c159d3d809bd5f7cb83f44818">GetSolutionValue</a> (unsigned int i, unsigned int solutionIndex=0) const =0</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1Solution.html#ed5fc195ac86c757d262e012c97aa279">~Solution</a> ()</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Provides functions to access the values of the solution vector. <p> The actual code of these functions as well as storage for the data is implemented in <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapper.html" title="Defines all functions required by Solver class to allocate, assemble and solve a...">LinearSystemWrapper</a> class.<p> <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="classitk_1_1fem_1_1LinearSystemWrapper.html" title="Defines all functions required by Solver class to allocate, assemble and solve a...">LinearSystemWrapper</a> </dd></dl> <p>Definition at line <a class="el" href="itkFEMSolution_8h_source.html#l00033">33</a> of file <a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>.</p> <hr><h2>Member Typedef Documentation</h2> <a class="anchor" name="d9794f489942299543f47e3b774d1675"></a><!-- doxytag: member="itk::fem::Solution::ConstPointer" ref="d9794f489942299543f47e3b774d1675" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef const <a class="el" href="classitk_1_1fem_1_1Solution.html">Self</a>* <a class="el" href="classitk_1_1fem_1_1Solution.html">itk::fem::Solution::ConstPointer</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Const pointer to an object. <p>Reimplemented in <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapper.html#9d6a58846f55f31d5477ce4bea7fe4e6">itk::fem::LinearSystemWrapper</a>.</p> <p>Definition at line <a class="el" href="itkFEMSolution_8h_source.html#l00047">47</a> of file <a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>.</p> </div> </div><p> <a class="anchor" name="c95fdd34e9d556c92091685c952d5397"></a><!-- doxytag: member="itk::fem::Solution::Float" ref="c95fdd34e9d556c92091685c952d5397" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef double <a class="el" href="classitk_1_1fem_1_1Solution.html#c95fdd34e9d556c92091685c952d5397">itk::fem::Solution::Float</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Floating point storage type used within a class <p>Reimplemented in <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapperDenseVNL.html#652eeb019082bd8753c94baff1187505">itk::fem::LinearSystemWrapperDenseVNL</a>, and <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapperVNL.html#0a78d2f37882a6b0a796753ab78e44b3">itk::fem::LinearSystemWrapperVNL</a>.</p> <p>Definition at line <a class="el" href="itkFEMSolution_8h_source.html#l00050">50</a> of file <a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>.</p> </div> </div><p> <a class="anchor" name="e6ed007b9637dcdfa2ea13982bf073db"></a><!-- doxytag: member="itk::fem::Solution::Pointer" ref="e6ed007b9637dcdfa2ea13982bf073db" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classitk_1_1fem_1_1Solution.html">Self</a>* <a class="el" href="classitk_1_1fem_1_1Solution.html">itk::fem::Solution::Pointer</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Pointer to an object. <p>Reimplemented in <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapper.html#3d6bf9942c781ace883d7678b5d5d05f">itk::fem::LinearSystemWrapper</a>.</p> <p>Definition at line <a class="el" href="itkFEMSolution_8h_source.html#l00044">44</a> of file <a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>.</p> </div> </div><p> <a class="anchor" name="ab39d466b5946f15e922841baf975b99"></a><!-- doxytag: member="itk::fem::Solution::Self" ref="ab39d466b5946f15e922841baf975b99" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classitk_1_1fem_1_1Solution.html">Solution</a> <a class="el" href="classitk_1_1fem_1_1Solution.html">itk::fem::Solution::Self</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Standard "Self" typedef. <p>Reimplemented in <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapper.html#c7c2b56a496433f83e6dd9d58cf798ce">itk::fem::LinearSystemWrapper</a>, and <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapperItpack.html#fdfaa8419388c2423312e6473220cc52">itk::fem::LinearSystemWrapperItpack</a>.</p> <p>Definition at line <a class="el" href="itkFEMSolution_8h_source.html#l00038">38</a> of file <a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>.</p> </div> </div><p> <a class="anchor" name="d5a788cadd1fd6a6c8a15b93076ddc97"></a><!-- doxytag: member="itk::fem::Solution::Superclass" ref="d5a788cadd1fd6a6c8a15b93076ddc97" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classitk_1_1fem_1_1Solution.html">Solution</a> <a class="el" href="classitk_1_1fem_1_1Solution.html">itk::fem::Solution::Superclass</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Standard "Superclass" typedef. <p>Reimplemented in <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapper.html#8447d009fbb5e9999131c25ddd63cb87">itk::fem::LinearSystemWrapper</a>, and <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapperItpack.html#5cd5654c7ae1ca5f08c78ecc1c14f5d4">itk::fem::LinearSystemWrapperItpack</a>.</p> <p>Definition at line <a class="el" href="itkFEMSolution_8h_source.html#l00041">41</a> of file <a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>.</p> </div> </div><p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="ed5fc195ac86c757d262e012c97aa279"></a><!-- doxytag: member="itk::fem::Solution::~Solution" ref="ed5fc195ac86c757d262e012c97aa279" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual itk::fem::Solution::~Solution </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Virtual destructor should properly destroy the object and clean up any memory allocated for matrix and vector storage. <p>Definition at line <a class="el" href="itkFEMSolution_8h_source.html#l00071">71</a> of file <a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="4d4ea59c159d3d809bd5f7cb83f44818"></a><!-- doxytag: member="itk::fem::Solution::GetSolutionValue" ref="4d4ea59c159d3d809bd5f7cb83f44818" args="(unsigned int i, unsigned int solutionIndex=0) const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classitk_1_1fem_1_1Solution.html#c95fdd34e9d556c92091685c952d5397">Float</a> itk::fem::Solution::GetSolutionValue </td> <td>(</td> <td class="paramtype">unsigned int </td> <td class="paramname"> <em>i</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">unsigned int </td> <td class="paramname"> <em>solutionIndex</em> = <code>0</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Returns value of i-th element in a solution vector. This value is calculated generalized displacement of the i-th degree of freedom in a FEM problem. Note that in general there may be several solution vectors. You can select which one do you want by passing the second parameter.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>i</em> </td><td>element index in solution vector </td></tr> <tr><td valign="top"></td><td valign="top"><em>solutionIndex</em> </td><td>index of solution vector to get value from</td></tr> </table> </dl> <dl class="note" compact><dt><b>Note:</b></dt><dd>If the solution vector doesn't exist (problem was not yet solved), or the index i is out of range, the function returns 0.0. </dd></dl> <p>Implemented in <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapperDenseVNL.html#3d55b539cd3fcaff8f267f06bcc30df8">itk::fem::LinearSystemWrapperDenseVNL</a>, <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapperItpack.html#db9c5eb75a1025583aad936cb0802683">itk::fem::LinearSystemWrapperItpack</a>, and <a class="el" href="classitk_1_1fem_1_1LinearSystemWrapperVNL.html#3e56a6f3a5330b054e20435b9c3e7ef7">itk::fem::LinearSystemWrapperVNL</a>.</p> <p>Referenced by <a class="el" href="itkFEMSolver_8h_source.html#l00252">itk::fem::Solver::GetSolution()</a>, <a class="el" href="itkFEMLoadLandmark_8h_source.html#l00074">itk::fem::LoadLandmark::GetSolution()</a>, <a class="el" href="itkFEMImageMetricLoad_8h_source.html#l00242">itk::fem::ImageMetricLoad< TMoving, TFixed >::GetSolution()</a>, and <a class="el" href="itkFEMFiniteDifferenceFunctionLoad_8h_source.html#l00255">itk::fem::FiniteDifferenceFunctionLoad< TMoving, TFixed >::GetSolution()</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="itkFEMSolution_8h_source.html">itkFEMSolution.h</a></ul> </div> <hr><address><small> Generated at Fri May 8 08:53:31 2009 for ITK by <a href="http://www.stack.nl/~dimitri/doxygen/index.html"> <img src="http://www.stack.nl/~dimitri/doxygen/doxygen.png" alt="doxygen" align="middle" border=0 width=110 height=53> </a> 1.5.9 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>, © 1997-2000</small></address> </body> </html>