ENH: curvature sparseness optimization

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1396 fd2da0a4-d968-48df-9cb5-d8c496287cbf
WIP: preconditioning experiments

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1397 fd2da0a4-d968-48df-9cb5-d8c496287cbf
BUG: ct == 0 ... WIP: preconditioning experiments

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1398 fd2da0a4-d968-48df-9cb5-d8c496287cbf
ENH: ImageMetrics and Label fusion

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1399 fd2da0a4-d968-48df-9cb5-d8c496287cbf
BUG: fixed radius option in CorrelationVoting

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1400 fd2da0a4-d968-48df-9cb5-d8c496287cbf
COMP:  Addressing unitialized variable warning.

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1401 fd2da0a4-d968-48df-9cb5-d8c496287cbf
BUG: Fix bug in order of operations logic

I think that the parenthesis are really needed, otherwise the order of
operation is pairwise left to right.  && and || have same precedence and
the resulting

- if (     pveck[ kk ] > 0   &&   signvec[ kk ] < 0     ||     pveck[ kk ] < 0   &&   signvec[ kk ] > 0  )
+ if ( ( ( pveck[ kk ] > 0 ) && ( signvec[ kk ] < 0 ) ) || ( ( pveck[ kk ] < 0 ) && ( signvec[ kk ] > 0 ) ) )
          ^-------------------------------------------^    ^----------------------------------------------^

otherwise the effective logic is:
- if ( ( ( pveck[ kk ] > 0   &&   signvec[ kk ] < 0 )   ||     pveck[ kk ] < 0 )  &&   signvec[ kk ] > 0  )
         ^------------------------------------------^
       ^-----------------------------------------------------------------------^
     ^----------------------------------------------------------------------------------------------------^

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1402 fd2da0a4-d968-48df-9cb5-d8c496287cbf
ENH: Updated to latest ITKv4 version

The latest ITKv4 version implements the
itkLegacyMacro correctly.  The member function
GetMeanTime() was deprecated long ago, and replaced
by GetMean().

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1403 fd2da0a4-d968-48df-9cb5-d8c496287cbf
COMP: Use std::vector for variable length arrays

ANTS/Examples/ImageMath.cxx:9382:37: error: variable length arrays are a
C99 feature, accepted as an extension [-Wvla]
   typename ImageType::Pointer images[argc-4];
                                      ^

Simply converting to std::vector resolved the compilation issue.

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1404 fd2da0a4-d968-48df-9cb5-d8c496287cbf
COMP: Remove sign comparision warning.

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1405 fd2da0a4-d968-48df-9cb5-d8c496287cbf
ENH: adding penalized ridge regression 

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1406 fd2da0a4-d968-48df-9cb5-d8c496287cbf
COMP: Address new compiler warnings

ANTS/Utilities/antsSCCANObject.hxx:148:28: warning: '&&' within '||' [-Wlogical-op-parentheses]
      if ( ( x[ kk ] > 0 ) && ( signvec[ kk ] < 0 ) ||
           ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ ~~
ANTS/Utilities/antsSCCANObject.hxx:148:28: note: place parentheses around the '&&' expression to silence this warning
      if ( ( x[ kk ] > 0 ) && ( signvec[ kk ] < 0 ) ||
                           ^
           (                                       )

ANTS/Utilities/antsSCCANObject.hxx:2248:53: warning: '&&' within '||' [-Wlogical-op-parentheses]
  while(  deltaminerr > 1.e-10 && minerr > convcrit && ct < maxits || ct < 5 )
          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ ~~
  while(  deltaminerr > 1.e-10 && minerr > convcrit && ct < maxits || ct < 5 )
                                                    ^
          (                                                       )

ANTS/Utilities/antsSCCANObject.hxx:2006:43: warning: unused parameter 'keeppos' [-Wunused-parameter]

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1407 fd2da0a4-d968-48df-9cb5-d8c496287cbf
WIP: alt sparse conj grad ridge

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1408 fd2da0a4-d968-48df-9cb5-d8c496287cbf
ENH: FrobeniusNormOfMatrixDifference

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1409 fd2da0a4-d968-48df-9cb5-d8c496287cbf
Merge pull request #5 from BRAINSia/FixAffineRegistration2Warning

COMP: Fixed warning in ANTS_affine_registration2.h

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1410 fd2da0a4-d968-48df-9cb5-d8c496287cbf
COMP: Disambiguate nested logical comparisons.

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1411 fd2da0a4-d968-48df-9cb5-d8c496287cbf
COMP: Simplyfy the build process

A macro was added to simplyfy the ANTS
build mechanism that was replicated
many times.  This makes it easier for adding
the next phase of test suite.

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1412 fd2da0a4-d968-48df-9cb5-d8c496287cbf
ENH: Reorganized the test framework

In preparation for further expanded testing for the
ANTS tools, some reorganization was necessary to keep
the process simple.  By moving all the tests to a
subdirectory of Examples, the overall pathing and
automatic reference of executables and libraries is
much easier.

There is also some incomplete additions (that are not
harmful) to be used for the expanded test writing
convenience.

git-svn-id: https://advants.svn.sourceforge.net/svnroot/advants/trunk@1413 fd2da0a4-d968-48df-9cb5-d8c496287cbf