EMAN::nnSSNR_Reconstructor Class Reference

#include <reconstructor.h>

Inheritance diagram for EMAN::nnSSNR_Reconstructor:

Inheritance graph
[legend]
Collaboration diagram for EMAN::nnSSNR_Reconstructor:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 nnSSNR_Reconstructor ()
 nnSSNR_Reconstructor (const string &symmetry, int size, int npad)
 ~nnSSNR_Reconstructor ()
virtual void setup ()
 Initialize the reconstructor.
virtual int insert_slice (const EMData *const slice, const Transform &euler, const float weight=1.0)
 Insert an image slice to the reconstructor.
virtual EMDatafinish (bool doift=true)
 Finish reconstruction and return the complete model.
virtual string get_name () const
 Get the unique name of this class (especially for factory based instantiation access).
virtual string get_desc () const
 Get a clear, concise description of this class.
virtual TypeDict get_param_types () const
void setup (const string &symmetry, int size, int npad)
int insert_padfft_slice (EMData *padded, const Transform &trans, int mult=1)

Static Public Member Functions

static ReconstructorNEW ()

Static Public Attributes

static const string NAME = "nnSSNR"

Private Member Functions

void buildFFTVolume ()
void buildNormVolume ()
void buildNorm2Volume ()

Private Attributes

EMDatam_volume
EMDatam_wptr
EMDatam_wptr2
EMDatam_result
bool m_delete_volume
bool m_delete_weight
bool m_delete_weight2
string m_symmetry
int m_weighting
int m_vnx
int m_vny
int m_vnz
int m_npad
int m_nsym
int m_vnzp
int m_vnyp
int m_vnxp
int m_vnzc
int m_vnyc
int m_vnxc
float m_wghta
float m_wghtb


Detailed Description

Definition at line 882 of file reconstructor.h.


Constructor & Destructor Documentation

nnSSNR_Reconstructor::nnSSNR_Reconstructor (  ) 

Definition at line 2396 of file reconstructor.cpp.

References m_result, m_volume, m_wptr, and m_wptr2.

Referenced by NEW().

02397 {
02398         m_volume = NULL;
02399         m_wptr   = NULL;
02400         m_wptr2  = NULL;
02401         m_result = NULL;
02402 }

nnSSNR_Reconstructor::nnSSNR_Reconstructor ( const string &  symmetry,
int  size,
int  npad 
)

Definition at line 2404 of file reconstructor.cpp.

References m_result, m_volume, m_wptr, m_wptr2, and setup().

02405 {
02406         m_volume = NULL;
02407         m_wptr   = NULL;
02408         m_wptr2  = NULL;
02409         m_result = NULL;
02410 
02411         setup( symmetry, size, npad );
02412 }

nnSSNR_Reconstructor::~nnSSNR_Reconstructor (  ) 

Definition at line 2414 of file reconstructor.cpp.

References checked_delete(), m_delete_volume, m_delete_weight, m_delete_weight2, m_result, m_volume, m_wptr, and m_wptr2.

02415 {
02416         if( m_delete_volume ) checked_delete(m_volume);
02417 
02418         if( m_delete_weight ) checked_delete( m_wptr );
02419 
02420         if( m_delete_weight2 ) checked_delete( m_wptr2 );
02421 
02422         checked_delete( m_result );
02423 }


Member Function Documentation

void nnSSNR_Reconstructor::setup (  )  [virtual]

Initialize the reconstructor.

Implements EMAN::Reconstructor.

Definition at line 2425 of file reconstructor.cpp.

References EMAN::Dict::has_key(), EMAN::FactoryBase::params, and EMAN::Gatan::to_str().

Referenced by nnSSNR_Reconstructor().

02426 {
02427         int size = params["size"];
02428         int npad = params["npad"];
02429 
02430         string symmetry;
02431         if( params.has_key("symmetry") ) symmetry = params["symmetry"].to_str();
02432         else                             symmetry = "c1";
02433 
02434         setup( symmetry, size, npad );
02435 }

int nnSSNR_Reconstructor::insert_slice ( const EMData *const   slice,
const Transform euler,
const float  weight = 1.0 
) [virtual]

Insert an image slice to the reconstructor.

To insert multiple image slices, call this function multiple times.

Parameters:
slice Image slice.
euler Euler angle of this image slice.
weight A weighting factor for this slice, generally the number of particles in a class-average. May be ignored by some reconstructors
Returns:
0 if OK. 1 if error.

Reimplemented from EMAN::Reconstructor.

Definition at line 2518 of file reconstructor.cpp.

References Assert, checked_delete(), EMAN::EMData::get_attr_default(), EMAN::EMData::get_xsize(), EMAN::EMData::get_ysize(), insert_padfft_slice(), LOGERR, m_npad, m_vnx, mult(), and EMAN::padfft_slice().

02518                                                                                                         {
02519         // sanity checks
02520         if (!slice) {
02521                 LOGERR("try to insert NULL slice");
02522                 return 1;
02523         }
02524 
02525         int padffted=slice->get_attr_default( "padffted", 0 );
02526 
02527         if ( padffted==0 && (slice->get_xsize()!=slice->get_ysize() || slice->get_xsize()!=m_vnx)  ) {
02528                 // FIXME: Why doesn't this throw an exception?
02529                 LOGERR("Tried to insert a slice that has wrong size.");
02530                 return 1;
02531         }
02532 
02533         EMData* padfft = NULL;
02534 
02535         if( padffted != 0 ) padfft = new EMData(*slice);
02536         else                padfft = padfft_slice( slice, t, m_npad );
02537 
02538         int mult = slice->get_attr_default("mult", 1);
02539 
02540         Assert( mult > 0 );
02541         insert_padfft_slice( padfft, t, mult );
02542 
02543         checked_delete( padfft );
02544         return 0;
02545 }

EMData * nnSSNR_Reconstructor::finish ( bool  doift = true  )  [virtual]

Finish reconstruction and return the complete model.

Parameters:
doift A flag indicating whether the returned object should be guaranteed to be in real-space (true) or should be left in whatever space the reconstructor generated
Returns:
The result 3D model.

Reimplemented from EMAN::Reconstructor.

Definition at line 2560 of file reconstructor.cpp.

References abs, EMAN::EMData::cmplx(), ESTIMATE, m_vnxc, m_vnxp, m_vnyc, m_vnyp, m_vnzc, m_vnzp, m_volume, m_weighting, m_wghta, m_wptr, m_wptr2, max, max3d(), nn(), norm(), EMAN::FactoryBase::params, EMAN::Util::round(), EMAN::EMData::set_complex(), EMAN::EMData::set_fftodd(), EMAN::EMData::set_fftpad(), EMAN::EMData::set_nxc(), EMAN::EMData::set_ri(), EMAN::EMData::set_size(), sqrt(), EMAN::EMData::symplane1(), EMAN::EMData::to_zero(), and EMAN::EMData::update().

02561 {
02562 /*
02563   I changed the code on 05/15 so it only returns variance.
02564   Lines commented out are marked by //#
02565   The version prior to the currect changes is r1.190
02566   PAP
02567 */
02568         int kz, ky;
02569         //#int iix, iiy, iiz;
02570         int box = 7;
02571         int kc = (box-1)/2;
02572         float alpha = 0.0;
02573         float argx, argy, argz;
02574         vector< float > pow_a( 3*kc+1, 1.0 );
02575         float w = params["w"];
02576         EMData* SSNR = params["SSNR"];
02577         //#EMData* vol_ssnr = new EMData();
02578         //#vol_ssnr->set_size(m_vnxp, m_vnyp, m_vnzp);
02579         //#vol_ssnr->to_zero();
02580         //#  new line follow
02581         EMData* vol_ssnr = new EMData();
02582         vol_ssnr->set_size(m_vnxp+ 2 - m_vnxp%2, m_vnyp ,m_vnzp);
02583         vol_ssnr->to_zero();
02584         if ( m_vnxp % 2 == 0 ) vol_ssnr->set_fftodd(0);
02585         else                   vol_ssnr->set_fftodd(1);
02586         vol_ssnr->set_nxc(m_vnxc);
02587         vol_ssnr->set_complex(true);
02588         vol_ssnr->set_ri(true);
02589         vol_ssnr->set_fftpad(false);
02590         //#
02591 
02592         float dx2 = 1.0f/float(m_vnxc)/float(m_vnxc);
02593         float dy2 = 1.0f/float(m_vnyc)/float(m_vnyc);
02594 #ifdef _WIN32
02595         float dz2 = 1.0f/_cpp_max(float(m_vnzc),1.0f)/_cpp_max(float(m_vnzc),1.0f);
02596         int  inc = Util::round(float(_cpp_max(_cpp_max(m_vnxc,m_vnyc),m_vnzc))/w);
02597 #else
02598         float dz2 = 1.0f/std::max(float(m_vnzc),1.0f)/std::max(float(m_vnzc),1.0f);
02599         int  inc = Util::round(float(std::max(std::max(m_vnxc,m_vnyc),m_vnzc))/w);
02600 #endif  //_WIN32
02601         SSNR->set_size(inc+1,4,1);
02602 
02603         float *nom    = new float[inc+1];
02604         float *denom  = new float[inc+1];
02605         int  *nn     = new int[inc+1];
02606         int  *ka     = new int[inc+1];
02607         float wght = 1.0f;
02608         for (int i = 0; i <= inc; i++) {
02609                 nom[i] = 0.0f;
02610                 denom[i] = 0.0f;
02611                 nn[i] = 0;
02612                 ka[i] = 0;
02613         }
02614 
02615         m_volume->symplane1(m_wptr, m_wptr2);
02616 
02617         if ( m_weighting == ESTIMATE ) {
02618                 int vol = box*box*box;
02619                 for( unsigned int i=1; i < pow_a.size(); ++i ) pow_a[i] = pow_a[i-1] * exp(m_wghta);
02620                 pow_a[3*kc] = 0.0;
02621                 float max = max3d( kc, pow_a );
02622                 alpha = ( 1.0f - 1.0f/(float)vol ) / max;
02623         }
02624 
02625         for (int iz = 1; iz <= m_vnzp; iz++) {
02626                 if ( iz-1 > m_vnzc ) kz = iz-1-m_vnzp; else kz = iz-1;
02627                 argz = float(kz*kz)*dz2;
02628                 for (int iy = 1; iy <= m_vnyp; iy++) {
02629                         if ( iy-1 > m_vnyc ) ky = iy-1-m_vnyp; else ky = iy-1;
02630                         argy = argz + float(ky*ky)*dy2;
02631                         for (int ix = 0; ix <= m_vnxc; ix++) {
02632                                 float Kn = (*m_wptr)(ix,iy,iz);
02633                                 argx = std::sqrt(argy + float(ix*ix)*dx2);
02634                                 int r = Util::round(float(inc)*argx);
02635                                 if ( r >= 0 && Kn > 4.5f ) {
02636                                         if ( m_weighting == ESTIMATE ) {
02637                                                 int cx = ix;
02638                                                 int cy = (iy<=m_vnyc) ? iy - 1 : iy - 1 - m_vnyp;
02639                                                 int cz = (iz<=m_vnzc) ? iz - 1 : iz - 1 - m_vnzp;
02640 
02641                                                 float sum = 0.0;
02642                                                 for( int ii = -kc; ii <= kc; ++ii ) {
02643                                                         int nbrcx = cx + ii;
02644                                                         if( nbrcx >= m_vnxc ) continue;
02645                                                     for ( int jj= -kc; jj <= kc; ++jj ) {
02646                                                                 int nbrcy = cy + jj;
02647                                                                 if( nbrcy <= -m_vnyc || nbrcy >= m_vnyc ) continue;
02648                                                                 for( int kk = -kc; kk <= kc; ++kk ) {
02649                                                                         int nbrcz = cz + jj;
02650                                                                         if ( nbrcz <= -m_vnyc || nbrcz >= m_vnyc ) continue;
02651                                                                         if( nbrcx < 0 ) {
02652                                                                                 nbrcx = -nbrcx;
02653                                                                                 nbrcy = -nbrcy;
02654                                                                                 nbrcz = -nbrcz;
02655                                                                         }
02656                                                                         int nbrix = nbrcx;
02657                                                                         int nbriy = nbrcy >= 0 ? nbrcy + 1 : nbrcy + 1 + m_vnyp;
02658                                                                         int nbriz = nbrcz >= 0 ? nbrcz + 1 : nbrcz + 1 + m_vnzp;
02659                                                                         if( (*m_wptr)( nbrix, nbriy, nbriz ) == 0 ) {
02660                                                                                 int c = 3*kc+1 - std::abs(ii) - std::abs(jj) - std::abs(kk);
02661                                                                                 sum = sum + pow_a[c];
02662                                                                         }
02663                                                                 }
02664                                                         }
02665                                                 }
02666                                                 wght = 1.0f / ( 1.0f - alpha * sum );
02667                                         } // end of ( m_weighting == ESTIMATE )
02668                                         float nominator = std::norm(m_volume->cmplx(ix,iy,iz))/Kn;
02669                                         float denominator = ((*m_wptr2)(ix,iy,iz)-nominator)/(Kn-1.0f);
02670                                         // Skip Friedel related values
02671                                         if( (ix>0 || (kz>=0 && (ky>=0 || kz!=0)))) {
02672                                                 if ( r <= inc ) {
02673                                                         nom[r]   += nominator*wght;
02674                                                         denom[r] += denominator/Kn*wght;
02675                                                         nn[r]    += 2;
02676                                                         ka[r]    += int(Kn);
02677                                                 }
02678 /*
02679 #ifdef  _WIN32
02680                                                 //#float  tmp = _cpp_max(nominator/denominator/Kn-1.0f,0.0f);
02681 #else
02682                                                 //#float  tmp = std::max(nominator/denominator/Kn-1.0f,0.0f);
02683 #endif  //_WIN32
02684                                                 //  Create SSNR as a 3D array (-n/2:n/2+n%2-1)
02685                                                 iix = m_vnxc + ix; iiy = m_vnyc + ky; iiz = m_vnzc + kz;
02686                                                 if( iix >= 0 && iix < m_vnxp && iiy >= 0 && iiy < m_vnyp && iiz >= 0 && iiz < m_vnzp )
02687                                                         (*vol_ssnr)(iix, iiy, iiz) = tmp;
02688                                                 // Friedel part
02689                                                 iix = m_vnxc - ix; iiy = m_vnyc - ky; iiz = m_vnzc - kz;
02690                                                 if( iix >= 0 && iix < m_vnxp && iiy >= 0 && iiy < m_vnyp && iiz >= 0 && iiz < m_vnzp )
02691                                                         (*vol_ssnr)(iix, iiy, iiz) = tmp;
02692 */
02693 
02694                                         }
02695                                         (*vol_ssnr)(2*ix, iy-1, iz-1) = denominator*wght;
02696                                         //(*vol_ssnr)(2*ix, iy-1, iz-1) =  real(m_volume->cmplx(ix,iy,iz))*wght/Kn;
02697                                         //(*vol_ssnr)(2*ix+1, iy-1, iz-1) = imag(m_volume->cmplx(ix,iy,iz))*wght/Kn;
02698                                 } // end of Kn>4.5
02699                         }
02700                 }
02701         }
02702 
02703         for (int i = 0; i <= inc; i++)  {
02704                 (*SSNR)(i,0,0) = nom[i];  
02705                 (*SSNR)(i,1,0) = denom[i];    // variance
02706                 (*SSNR)(i,2,0) = static_cast<float>(nn[i]);
02707                 (*SSNR)(i,3,0) = static_cast<float>(ka[i]);
02708         }
02709         vol_ssnr->update();
02710         return vol_ssnr;
02711 }

virtual string EMAN::nnSSNR_Reconstructor::get_name (  )  const [inline, virtual]

Get the unique name of this class (especially for factory based instantiation access).

Returns:
the unique name of this class

Implements EMAN::FactoryBase.

Definition at line 906 of file reconstructor.h.

References NAME.

00907                 {
00908                         return NAME;
00909                 }

virtual string EMAN::nnSSNR_Reconstructor::get_desc (  )  const [inline, virtual]

Get a clear, concise description of this class.

Returns:
a clear, concise description of this class

Implements EMAN::FactoryBase.

Definition at line 911 of file reconstructor.h.

00912                 {
00913                         return "Reconstruction by nearest neighbor with 3D SSNR";
00914                 }

static Reconstructor* EMAN::nnSSNR_Reconstructor::NEW (  )  [inline, static]

Definition at line 916 of file reconstructor.h.

References nnSSNR_Reconstructor().

00917                 {
00918                         return new nnSSNR_Reconstructor();
00919                 }

virtual TypeDict EMAN::nnSSNR_Reconstructor::get_param_types (  )  const [inline, virtual]

Returns:
a TypeDict defining and describing the feasible parameters of this class

Implements EMAN::FactoryBase.

Definition at line 921 of file reconstructor.h.

References EMAN::EMObject::EMDATA, EMAN::EMObject::FLOAT, EMAN::EMObject::INT, EMAN::TypeDict::put(), and EMAN::EMObject::STRING.

00922                 {
00923                         TypeDict d;
00924                         d.put("size", EMObject::INT);
00925                         d.put("npad", EMObject::INT);
00926                         d.put("symmetry", EMObject::STRING);
00927                         d.put("fftvol", EMObject::EMDATA);
00928                         d.put("weight", EMObject::EMDATA);
00929                         d.put("weight2", EMObject::EMDATA);
00930                         d.put("SSNR", EMObject::EMDATA);
00931                         d.put("w", EMObject::FLOAT);
00932                         return d;
00933                 }

void nnSSNR_Reconstructor::setup ( const string &  symmetry,
int  size,
int  npad 
)

Definition at line 2437 of file reconstructor.cpp.

References buildFFTVolume(), buildNorm2Volume(), buildNormVolume(), ESTIMATE, EMAN::Transform::get_nsym(), m_npad, m_nsym, m_symmetry, m_vnx, m_vnxc, m_vnxp, m_vny, m_vnyc, m_vnyp, m_vnz, m_vnzc, m_vnzp, m_weighting, m_wghta, and m_wghtb.

02438 {
02439 
02440         m_weighting = ESTIMATE;
02441         m_wghta = 0.2f;
02442         m_wghtb = 0.004f;
02443 
02444         m_symmetry = symmetry;
02445         m_npad = npad;
02446         m_nsym = Transform::get_nsym(m_symmetry);
02447 
02448         m_vnx = size;
02449         m_vny = size;
02450         m_vnz = size;
02451 
02452         m_vnxp = size*npad;
02453         m_vnyp = size*npad;
02454         m_vnzp = size*npad;
02455 
02456         m_vnxc = m_vnxp/2;
02457         m_vnyc = m_vnyp/2;
02458         m_vnzc = m_vnzp/2;
02459 
02460         buildFFTVolume();
02461         buildNormVolume();
02462         buildNorm2Volume();
02463 
02464 }

int nnSSNR_Reconstructor::insert_padfft_slice ( EMData padded,
const Transform trans,
int  mult = 1 
)

Definition at line 2547 of file reconstructor.cpp.

References Assert, EMAN::Transform::get_sym(), m_nsym, m_symmetry, m_volume, m_wptr, m_wptr2, and EMAN::EMData::nn_SSNR().

Referenced by insert_slice().

02548 {
02549         Assert( padfft != NULL );
02550         // insert slice for all symmetry related positions
02551         for (int isym=0; isym < m_nsym; isym++) {
02552                 Transform tsym = t.get_sym(m_symmetry, isym);
02553                 m_volume->nn_SSNR( m_wptr, m_wptr2, padfft, tsym, mult);
02554         }
02555         return 0;
02556 }

void nnSSNR_Reconstructor::buildFFTVolume (  )  [private]

Definition at line 2466 of file reconstructor.cpp.

References EMAN::Dict::has_key(), m_delete_volume, m_npad, m_vnxc, m_vnxp, m_vnyp, m_vnzp, m_volume, EMAN::FactoryBase::params, EMAN::EMData::set_array_offsets(), EMAN::EMData::set_attr(), EMAN::EMData::set_complex(), EMAN::EMData::set_fftodd(), EMAN::EMData::set_fftpad(), EMAN::EMData::set_nxc(), EMAN::EMData::set_ri(), EMAN::EMData::set_size(), and EMAN::EMData::to_zero().

Referenced by setup().

02466                                           {
02467 
02468         if( params.has_key("fftvol") ) {
02469                 m_volume = params["fftvol"]; /* volume should be defined in python when PMI is turned on*/
02470                 m_delete_volume = false;
02471         } else {
02472                 m_volume = new EMData();
02473                 m_delete_volume = true;
02474         }
02475         m_volume->set_size(m_vnxp+ 2 - m_vnxp%2,m_vnyp,m_vnzp);
02476         m_volume->to_zero();
02477         if ( m_vnxp % 2 == 0 ) m_volume->set_fftodd(0);
02478         else                   m_volume->set_fftodd(1);
02479 
02480         m_volume->set_nxc(m_vnxc);
02481         m_volume->set_complex(true);
02482         m_volume->set_ri(true);
02483         m_volume->set_fftpad(true);
02484         m_volume->set_attr("npad", m_npad);
02485         m_volume->set_array_offsets(0,1,1);
02486 }

void nnSSNR_Reconstructor::buildNormVolume (  )  [private]

Definition at line 2488 of file reconstructor.cpp.

References EMAN::Dict::has_key(), m_delete_weight, m_vnxc, m_vnyp, m_vnzp, m_wptr, EMAN::FactoryBase::params, EMAN::EMData::set_array_offsets(), EMAN::EMData::set_size(), and EMAN::EMData::to_zero().

Referenced by setup().

02488                                            {
02489         if( params.has_key("weight") ) {
02490                 m_wptr          = params["weight"];
02491                 m_delete_weight = false;
02492         } else {
02493                 m_wptr = new EMData();
02494                 m_delete_weight = true;
02495         }
02496 
02497         m_wptr->set_size(m_vnxc+1,m_vnyp,m_vnzp);
02498         m_wptr->to_zero();
02499 
02500         m_wptr->set_array_offsets(0,1,1);
02501 }

void nnSSNR_Reconstructor::buildNorm2Volume (  )  [private]

Definition at line 2503 of file reconstructor.cpp.

References EMAN::Dict::has_key(), m_delete_weight2, m_vnxc, m_vnyp, m_vnzp, m_wptr2, EMAN::FactoryBase::params, EMAN::EMData::set_array_offsets(), EMAN::EMData::set_size(), and EMAN::EMData::to_zero().

Referenced by setup().

02503                                             {
02504 
02505         if( params.has_key("weight2") ) {
02506                 m_wptr2          = params["weight2"];
02507                 m_delete_weight2 = false;
02508         } else {
02509                 m_wptr2 = new EMData();
02510                 m_delete_weight2 = true;
02511         }
02512         m_wptr2->set_size(m_vnxc+1,m_vnyp,m_vnzp);
02513         m_wptr2->to_zero();
02514         m_wptr2->set_array_offsets(0,1,1);
02515 }


Member Data Documentation

const string nnSSNR_Reconstructor::NAME = "nnSSNR" [static]

Definition at line 939 of file reconstructor.h.

Referenced by get_name().

Definition at line 945 of file reconstructor.h.

Referenced by nnSSNR_Reconstructor(), and ~nnSSNR_Reconstructor().

Definition at line 946 of file reconstructor.h.

Referenced by buildFFTVolume(), and ~nnSSNR_Reconstructor().

Definition at line 947 of file reconstructor.h.

Referenced by buildNormVolume(), and ~nnSSNR_Reconstructor().

Definition at line 948 of file reconstructor.h.

Referenced by buildNorm2Volume(), and ~nnSSNR_Reconstructor().

Definition at line 949 of file reconstructor.h.

Referenced by insert_padfft_slice(), and setup().

Definition at line 950 of file reconstructor.h.

Referenced by finish(), and setup().

Definition at line 951 of file reconstructor.h.

Referenced by insert_slice(), and setup().

Definition at line 951 of file reconstructor.h.

Referenced by setup().

Definition at line 951 of file reconstructor.h.

Referenced by setup().

Definition at line 952 of file reconstructor.h.

Referenced by buildFFTVolume(), insert_slice(), and setup().

Definition at line 953 of file reconstructor.h.

Referenced by insert_padfft_slice(), and setup().

Definition at line 954 of file reconstructor.h.

Referenced by buildFFTVolume(), buildNorm2Volume(), buildNormVolume(), finish(), and setup().

Definition at line 954 of file reconstructor.h.

Referenced by buildFFTVolume(), buildNorm2Volume(), buildNormVolume(), finish(), and setup().

Definition at line 954 of file reconstructor.h.

Referenced by buildFFTVolume(), finish(), and setup().

Definition at line 955 of file reconstructor.h.

Referenced by finish(), and setup().

Definition at line 955 of file reconstructor.h.

Referenced by finish(), and setup().

Definition at line 955 of file reconstructor.h.

Referenced by buildFFTVolume(), buildNorm2Volume(), buildNormVolume(), finish(), and setup().

Definition at line 959 of file reconstructor.h.

Referenced by finish(), and setup().

Definition at line 960 of file reconstructor.h.

Referenced by setup().


The documentation for this class was generated from the following files:

Generated on Sun Mar 21 02:20:38 2010 for EMAN2 by  doxygen 1.5.6