#include <reconstructor.h>
Inheritance diagram for EMAN::nnSSNR_ctfReconstructor:
Public Member Functions | |
nnSSNR_ctfReconstructor () | |
nnSSNR_ctfReconstructor (const string &symmetry, int size, int npad, float snr, int sign) | |
~nnSSNR_ctfReconstructor () | |
virtual void | setup () |
Initialize the reconstructor. | |
virtual int | insert_slice (const EMData *const slice, const Transform &euler, const float weight=1.0) |
Insert a slice into a 3D volume, in a given orientation. | |
virtual EMData * | finish (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. | |
TypeDict | get_param_types () const |
void | setup (const string &symmetry, int size, int npad, float snr, int sign) |
int | insert_padfft_slice (EMData *padded, const Transform &trans, int mult=1) |
Static Public Member Functions | |
static Reconstructor * | NEW () |
Static Public Attributes | |
static const string | NAME = "nnSSNR_ctf" |
Private Member Functions | |
void | buildFFTVolume () |
void | buildNormVolume () |
void | buildNorm2Volume () |
void | buildNorm3Volume () |
Private Attributes | |
EMData * | m_volume |
EMData * | m_wptr |
EMData * | m_wptr2 |
EMData * | m_wptr3 |
EMData * | m_result |
bool | m_delete_volume |
bool | m_delete_weight |
bool | m_delete_weight2 |
bool | m_delete_weight3 |
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 |
int | m_sign |
float | m_snr |
int | wiener |
Definition at line 1197 of file reconstructor.h.
nnSSNR_ctfReconstructor::nnSSNR_ctfReconstructor | ( | ) |
nnSSNR_ctfReconstructor::nnSSNR_ctfReconstructor | ( | const string & | symmetry, | |
int | size, | |||
int | npad, | |||
float | snr, | |||
int | sign | |||
) |
Definition at line 3810 of file reconstructor.cpp.
References m_result, m_volume, m_wptr, m_wptr2, m_wptr3, and setup().
03811 { 03812 m_volume = NULL; 03813 m_wptr = NULL; 03814 m_wptr2 = NULL; 03815 m_wptr3 = NULL; 03816 m_result = NULL; 03817 03818 setup( symmetry, size, npad, snr, sign ); 03819 }
nnSSNR_ctfReconstructor::~nnSSNR_ctfReconstructor | ( | ) |
Definition at line 3821 of file reconstructor.cpp.
References checked_delete(), m_delete_volume, m_delete_weight, m_delete_weight2, m_delete_weight3, m_result, m_volume, m_wptr, m_wptr2, and m_wptr3.
03822 { 03823 03824 if( m_delete_volume ) checked_delete(m_volume); 03825 if( m_delete_weight ) checked_delete( m_wptr ); 03826 if( m_delete_weight2 ) checked_delete( m_wptr2 ); 03827 if( m_delete_weight3 ) checked_delete( m_wptr3 ); 03828 checked_delete( m_result ); 03829 }
void nnSSNR_ctfReconstructor::buildFFTVolume | ( | ) | [private] |
Definition at line 3876 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().
03876 { 03877 03878 int offset = 2 - m_vnxp%2; 03879 if( params.has_key("fftvol") ) { 03880 m_volume = params["fftvol"]; /* volume should be defined in python when PMI is turned on*/ 03881 m_delete_volume = false; 03882 } else { 03883 m_volume = new EMData(); 03884 m_delete_volume = true; 03885 } 03886 03887 m_volume->set_size(m_vnxp+offset,m_vnyp,m_vnzp); 03888 m_volume->to_zero(); 03889 03890 m_volume->set_fftodd(m_vnxp % 2); 03891 03892 m_volume->set_nxc(m_vnxc); 03893 m_volume->set_complex(true); 03894 m_volume->set_ri(true); //(real, imaginary) instead of polar coordinate 03895 m_volume->set_fftpad(true); 03896 m_volume->set_attr("npad", m_npad); 03897 m_volume->set_array_offsets(0,1,1); 03898 }
void nnSSNR_ctfReconstructor::buildNorm2Volume | ( | ) | [private] |
Definition at line 3915 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().
03915 { 03916 03917 if( params.has_key("weight2") ) { 03918 m_wptr2 = params["weight2"]; 03919 m_delete_weight2 = false; 03920 } else { 03921 m_wptr2 = new EMData(); 03922 m_delete_weight2 = true; 03923 } 03924 m_wptr2->set_size(m_vnxc+1,m_vnyp,m_vnzp); 03925 m_wptr2->to_zero(); 03926 m_wptr2->set_array_offsets(0,1,1); 03927 }
void nnSSNR_ctfReconstructor::buildNorm3Volume | ( | ) | [private] |
Definition at line 3929 of file reconstructor.cpp.
References EMAN::Dict::has_key(), m_delete_weight3, m_vnxc, m_vnyp, m_vnzp, m_wptr3, EMAN::FactoryBase::params, EMAN::EMData::set_array_offsets(), EMAN::EMData::set_size(), and EMAN::EMData::to_zero().
Referenced by setup().
03929 { 03930 03931 if( params.has_key("weight3") ) { 03932 m_wptr3 = params["weight3"]; 03933 m_delete_weight3 = false; 03934 } else { 03935 m_wptr3 = new EMData(); 03936 m_delete_weight3 = true; 03937 } 03938 m_wptr3->set_size(m_vnxc+1,m_vnyp,m_vnzp); 03939 m_wptr3->to_zero(); 03940 m_wptr3->set_array_offsets(0,1,1); 03941 }
void nnSSNR_ctfReconstructor::buildNormVolume | ( | ) | [private] |
Definition at line 3901 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().
03902 { 03903 if( params.has_key("weight") ) { 03904 m_wptr = params["weight"]; 03905 m_delete_weight = false; 03906 } else { 03907 m_wptr = new EMData(); 03908 m_delete_weight = true; 03909 } 03910 m_wptr->set_size(m_vnxc+1,m_vnyp,m_vnzp); 03911 m_wptr->to_zero(); 03912 m_wptr->set_array_offsets(0,1,1); 03913 }
EMData * nnSSNR_ctfReconstructor::finish | ( | bool | doift = true |
) | [virtual] |
Finish reconstruction and return the complete model.
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 |
Reimplemented from EMAN::Reconstructor.
Definition at line 3982 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, m_wptr3, 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::symplane2(), EMAN::EMData::to_zero(), and EMAN::EMData::update().
03983 { 03984 /* 03985 I changed the code on 05/15 so it only returns variance. 03986 Lines commented out are marked by //# 03987 The version prior to the currect changes is r1.190 03988 PAP 03989 */ 03990 /*** 03991 m_volume ctf*(P^2D->3D(F^3D)) 03992 m_wptr ctf^2 03993 m_wptr2 |P^2D->3D(F^3D)|^2 03994 m_wptr3 Kn 03995 nominator = sum_rot [ wght*signal ] 03996 denominator = sum_rot[ wght*variance ] 03997 ***/ 03998 int kz, ky; 03999 int box = 7; 04000 int kc = (box-1)/2; 04001 float alpha = 0.0; 04002 float argx, argy, argz; 04003 vector< float > pow_a( 3*kc+1, 1.0 ); 04004 float w = params["w"]; 04005 float dx2 = 1.0f/float(m_vnxc)/float(m_vnxc); 04006 float dy2 = 1.0f/float(m_vnyc)/float(m_vnyc); 04007 #ifdef _WIN32 04008 float dz2 = 1.0f/_cpp_max(float(m_vnzc),1.0f)/_cpp_max(float(m_vnzc),1.0f); 04009 int inc = Util::round(float(_cpp_max(_cpp_max(m_vnxc,m_vnyc),m_vnzc))/w); 04010 #else 04011 float dz2 = 1.0f/std::max(float(m_vnzc),1.0f)/std::max(float(m_vnzc),1.0f); 04012 int inc = Util::round(float(std::max(std::max(m_vnxc,m_vnyc),m_vnzc))/w); 04013 #endif //_WIN32 04014 04015 EMData* SSNR = params["SSNR"]; 04016 SSNR->set_size(inc+1,4,1); 04017 //#EMData* vol_ssnr = new EMData(); 04018 //#vol_ssnr->set_size(m_vnxp, m_vnyp, m_vnzp); 04019 //#vol_ssnr->to_zero(); 04020 //# new linea follow 04021 EMData* vol_ssnr = new EMData(); 04022 vol_ssnr->set_size(m_vnxp+ 2 - m_vnxp%2, m_vnyp ,m_vnzp); 04023 vol_ssnr->to_zero(); 04024 if ( m_vnxp % 2 == 0 ) vol_ssnr->set_fftodd(0); 04025 else vol_ssnr->set_fftodd(1); 04026 vol_ssnr->set_nxc(m_vnxc); 04027 vol_ssnr->set_complex(true); 04028 vol_ssnr->set_ri(true); 04029 vol_ssnr->set_fftpad(false); 04030 //# 04031 float *nom = new float[inc+1]; 04032 float *denom = new float[inc+1]; 04033 int *ka = new int[inc+1]; 04034 int *nn = new int[inc+1]; 04035 float wght = 1.f; 04036 for (int i = 0; i <= inc; i++) { 04037 nom[i] = 0.0f; 04038 denom[i] = 0.0f; 04039 nn[i] = 0; 04040 ka[i] = 0; 04041 } 04042 m_volume->symplane2(m_wptr, m_wptr2, m_wptr3); 04043 if ( m_weighting == ESTIMATE ) { 04044 int vol = box*box*box; 04045 for( unsigned int i=1; i < pow_a.size(); ++i ) pow_a[i] = pow_a[i-1] * exp(m_wghta); 04046 pow_a[3*kc] = 0.0; 04047 float max = max3d( kc, pow_a ); 04048 alpha = ( 1.0f - 1.0f/(float)vol ) / max; 04049 } 04050 for (int iz = 1; iz <= m_vnzp; iz++) { 04051 if ( iz-1 > m_vnzc ) kz = iz-1-m_vnzp; else kz = iz-1; 04052 argz = float(kz*kz)*dz2; 04053 for (int iy = 1; iy <= m_vnyp; iy++) { 04054 if ( iy-1 > m_vnyc ) ky = iy-1-m_vnyp; else ky = iy-1; 04055 argy = argz + float(ky*ky)*dy2; 04056 for (int ix = 0; ix <= m_vnxc; ix++) { 04057 float Kn = (*m_wptr3)(ix,iy,iz); 04058 argx = std::sqrt(argy + float(ix*ix)*dx2); 04059 int r = Util::round(float(inc)*argx); 04060 if ( r >= 0 && Kn > 4.5f ) { 04061 if ( m_weighting == ESTIMATE ) { 04062 int cx = ix; 04063 int cy = (iy<=m_vnyc) ? iy - 1 : iy - 1 - m_vnyp; 04064 int cz = (iz<=m_vnzc) ? iz - 1 : iz - 1 - m_vnzp; 04065 float sum = 0.0; 04066 for( int ii = -kc; ii <= kc; ++ii ) { 04067 int nbrcx = cx + ii; 04068 if( nbrcx >= m_vnxc ) continue; 04069 for ( int jj= -kc; jj <= kc; ++jj ) { 04070 int nbrcy = cy + jj; 04071 if( nbrcy <= -m_vnyc || nbrcy >= m_vnyc ) continue; 04072 for( int kk = -kc; kk <= kc; ++kk ) { 04073 int nbrcz = cz + jj; 04074 if ( nbrcz <= -m_vnyc || nbrcz >= m_vnyc ) continue; 04075 if( nbrcx < 0 ) { 04076 nbrcx = -nbrcx; 04077 nbrcy = -nbrcy; 04078 nbrcz = -nbrcz; 04079 } 04080 int nbrix = nbrcx; 04081 int nbriy = nbrcy >= 0 ? nbrcy + 1 : nbrcy + 1 + m_vnyp; 04082 int nbriz = nbrcz >= 0 ? nbrcz + 1 : nbrcz + 1 + m_vnzp; 04083 if( (*m_wptr)( nbrix, nbriy, nbriz ) == 0 ) { 04084 int c = 3*kc+1 - std::abs(ii) - std::abs(jj) - std::abs(kk); 04085 sum = sum + pow_a[c]; 04086 } 04087 } 04088 } 04089 } 04090 // int r = std::abs(cx) + std::abs(cy) + std::abs(cz); 04091 wght = 1.0f / ( 1.0f - alpha * sum ); 04092 } // end of ( m_weighting == ESTIMATE ) 04093 float nominator = std::norm(m_volume->cmplx(ix,iy,iz))/(*m_wptr)(ix,iy,iz); 04094 float denominator = ((*m_wptr2)(ix,iy,iz)-std::norm(m_volume->cmplx(ix,iy,iz))/(*m_wptr)(ix,iy,iz))/(Kn-1.0f); 04095 // Skip Friedel related values 04096 if( (ix>0 || (kz>=0 && (ky>=0 || kz!=0)))) { 04097 if ( r <= inc ) { 04098 nom[r] += nominator*wght; 04099 denom[r] += denominator/(*m_wptr)(ix,iy,iz)*wght; 04100 nn[r] += 2; 04101 ka[r] += int(Kn); 04102 } 04103 /* 04104 #ifdef _WIN32 04105 float tmp = _cpp_max(nominator/denominator/(*m_wptr)(ix,iy,iz)-1.0f,0.0f); 04106 #else 04107 float tmp = std::max(nominator/denominator/(*m_wptr)(ix,iy,iz)-1.0f,0.0f); 04108 #endif //_WIN32 04109 // Create SSNR as a 3D array (-n/2:n/2+n%2-1) 04110 int iix = m_vnxc + ix; int iiy = m_vnyc + ky; int iiz = m_vnzc + kz; 04111 if( iix >= 0 && iix < m_vnxp && iiy >= 0 && iiy < m_vnyp && iiz >= 0 && iiz < m_vnzp ) 04112 (*vol_ssnr)(iix, iiy, iiz) = tmp; 04113 // Friedel part 04114 iix = m_vnxc - ix; iiy = m_vnyc - ky; iiz = m_vnzc - kz; 04115 if( iix >= 0 && iix < m_vnxp && iiy >= 0 && iiy < m_vnyp && iiz >= 0 && iiz < m_vnzp ) 04116 (*vol_ssnr)(iix, iiy, iiz) = tmp; 04117 */ 04118 } 04119 (*vol_ssnr)(2*ix, iy-1, iz-1) = denominator*wght; 04120 } // end of Kn>4.5 or whatever 04121 } 04122 } 04123 } 04124 for (int i = 0; i <= inc; i++) { 04125 (*SSNR)(i,0,0) = nom[i]; 04126 (*SSNR)(i,1,0) = denom[i]; 04127 (*SSNR)(i,2,0) = static_cast<float>(nn[i]); 04128 (*SSNR)(i,3,0) = static_cast<float>(ka[i]); 04129 } 04130 vol_ssnr->update(); 04131 return vol_ssnr; 04132 // } 04133 }
virtual string EMAN::nnSSNR_ctfReconstructor::get_desc | ( | ) | const [inline, virtual] |
Get a clear, concise description of this class.
Implements EMAN::FactoryBase.
Definition at line 1228 of file reconstructor.h.
virtual string EMAN::nnSSNR_ctfReconstructor::get_name | ( | ) | const [inline, virtual] |
Get the unique name of this class (especially for factory based instantiation access).
Implements EMAN::FactoryBase.
Definition at line 1223 of file reconstructor.h.
References NAME.
01224 { 01225 return NAME; 01226 }
TypeDict EMAN::nnSSNR_ctfReconstructor::get_param_types | ( | ) | const [inline, virtual] |
Implements EMAN::FactoryBase.
Definition at line 1238 of file reconstructor.h.
References EMAN::EMObject::EMDATA, EMAN::EMObject::FLOAT, EMAN::EMObject::INT, EMAN::TypeDict::put(), and EMAN::EMObject::STRING.
01239 { 01240 TypeDict d; 01241 d.put("size", EMObject::INT); 01242 d.put("npad", EMObject::INT); 01243 d.put("symmetry", EMObject::STRING); 01244 d.put("fftvol", EMObject::EMDATA); 01245 d.put("fftwvol", EMObject::EMDATA); 01246 d.put("weight", EMObject::EMDATA); 01247 d.put("weight2", EMObject::EMDATA); 01248 d.put("weight3", EMObject::EMDATA); 01249 d.put("SSNR", EMObject::EMDATA); 01250 d.put("w", EMObject::FLOAT); 01251 d.put("sign", EMObject::INT); 01252 d.put("snr", EMObject::FLOAT); 01253 return d; 01254 }
int nnSSNR_ctfReconstructor::insert_padfft_slice | ( | EMData * | padded, | |
const Transform & | trans, | |||
int | mult = 1 | |||
) |
Definition at line 3968 of file reconstructor.cpp.
References Assert, m_nsym, m_symmetry, m_volume, m_wptr, m_wptr2, m_wptr3, EMAN::EMData::nn_SSNR_ctf(), and t.
Referenced by insert_slice().
03969 { 03970 Assert( padfft != NULL ); 03971 03972 // insert slice for all symmetry related positions 03973 for (int isym=0; isym < m_nsym; isym++) { 03974 Transform tsym = t.get_sym(m_symmetry, isym); 03975 m_volume->nn_SSNR_ctf(m_wptr, m_wptr2, m_wptr3, padfft, tsym, mult); 03976 } 03977 03978 return 0; 03979 }
int nnSSNR_ctfReconstructor::insert_slice | ( | const EMData *const | slice, | |
const Transform & | euler, | |||
const float | weight = 1.0 | |||
) | [virtual] |
Insert a slice into a 3D volume, in a given orientation.
slice | the image slice to be inserted into the 3D volume | |
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 |
NullPointerException | if the input EMData pointer is null | |
ImageFormatException | if the image is complex as opposed to real |
Reimplemented from EMAN::Reconstructor.
Definition at line 3943 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(), EMAN::padfft_slice(), and t.
03943 { 03944 // sanity checks 03945 if (!slice) { 03946 LOGERR("try to insert NULL slice"); 03947 return 1; 03948 } 03949 int padffted= slice->get_attr_default("padffted", 0); 03950 if ( padffted==0 && (slice->get_xsize()!=slice->get_ysize() || slice->get_xsize()!=m_vnx) ) { 03951 // FIXME: Why doesn't this throw an exception? 03952 LOGERR("Tried to insert a slice that is the wrong size."); 03953 return 1; 03954 } 03955 EMData* padfft = NULL; 03956 03957 if( padffted != 0 ) padfft = new EMData(*slice); 03958 else padfft = padfft_slice( slice, t, m_npad ); 03959 03960 int mult= slice->get_attr_default("mult", 1); 03961 03962 Assert( mult > 0 ); 03963 insert_padfft_slice( padfft, t, mult ); 03964 03965 checked_delete( padfft ); 03966 return 0; 03967 }
static Reconstructor* EMAN::nnSSNR_ctfReconstructor::NEW | ( | ) | [inline, static] |
Definition at line 1233 of file reconstructor.h.
References nnSSNR_ctfReconstructor().
01234 { 01235 return new nnSSNR_ctfReconstructor(); 01236 }
void nnSSNR_ctfReconstructor::setup | ( | const string & | symmetry, | |
int | size, | |||
int | npad, | |||
float | snr, | |||
int | sign | |||
) |
Definition at line 3843 of file reconstructor.cpp.
References buildFFTVolume(), buildNorm2Volume(), buildNorm3Volume(), buildNormVolume(), ESTIMATE, EMAN::Transform::get_nsym(), m_npad, m_nsym, m_sign, m_snr, m_symmetry, m_vnx, m_vnxc, m_vnxp, m_vny, m_vnyc, m_vnyp, m_vnz, m_vnzc, m_vnzp, m_weighting, m_wghta, m_wghtb, and wiener.
03844 { 03845 03846 m_weighting = ESTIMATE; 03847 m_wghta = 0.2f; 03848 m_wghtb = 0.004f; 03849 wiener = 1; 03850 03851 m_symmetry = symmetry; 03852 m_npad = npad; 03853 m_nsym = Transform::get_nsym(m_symmetry); 03854 03855 m_sign = sign; 03856 m_snr = snr; 03857 03858 m_vnx = size; 03859 m_vny = size; 03860 m_vnz = size; 03861 03862 m_vnxp = size*npad; 03863 m_vnyp = size*npad; 03864 m_vnzp = size*npad; 03865 03866 m_vnxc = m_vnxp/2; 03867 m_vnyc = m_vnyp/2; 03868 m_vnzc = m_vnzp/2; 03869 03870 buildFFTVolume(); 03871 buildNormVolume(); 03872 buildNorm2Volume(); 03873 buildNorm3Volume(); 03874 }
void nnSSNR_ctfReconstructor::setup | ( | ) | [virtual] |
Initialize the reconstructor.
Implements EMAN::Reconstructor.
Definition at line 3831 of file reconstructor.cpp.
References EMAN::Dict::has_key(), EMAN::FactoryBase::params, sign, and EMAN::Gatan::to_str().
Referenced by nnSSNR_ctfReconstructor().
03832 { 03833 int size = params["size"]; 03834 int npad = params["npad"]; 03835 int sign = params["sign"]; 03836 float snr = params["snr"]; 03837 string symmetry; 03838 if( params.has_key("symmetry") ) symmetry = params["symmetry"].to_str(); 03839 else symmetry = "c1"; 03840 03841 setup( symmetry, size, npad, snr, sign ); 03842 }
bool EMAN::nnSSNR_ctfReconstructor::m_delete_volume [private] |
Definition at line 1267 of file reconstructor.h.
Referenced by buildFFTVolume(), and ~nnSSNR_ctfReconstructor().
bool EMAN::nnSSNR_ctfReconstructor::m_delete_weight [private] |
Definition at line 1268 of file reconstructor.h.
Referenced by buildNormVolume(), and ~nnSSNR_ctfReconstructor().
bool EMAN::nnSSNR_ctfReconstructor::m_delete_weight2 [private] |
Definition at line 1269 of file reconstructor.h.
Referenced by buildNorm2Volume(), and ~nnSSNR_ctfReconstructor().
bool EMAN::nnSSNR_ctfReconstructor::m_delete_weight3 [private] |
Definition at line 1270 of file reconstructor.h.
Referenced by buildNorm3Volume(), and ~nnSSNR_ctfReconstructor().
int EMAN::nnSSNR_ctfReconstructor::m_npad [private] |
Definition at line 1274 of file reconstructor.h.
Referenced by buildFFTVolume(), insert_slice(), and setup().
int EMAN::nnSSNR_ctfReconstructor::m_nsym [private] |
EMData* EMAN::nnSSNR_ctfReconstructor::m_result [private] |
Definition at line 1266 of file reconstructor.h.
Referenced by nnSSNR_ctfReconstructor(), and ~nnSSNR_ctfReconstructor().
int EMAN::nnSSNR_ctfReconstructor::m_sign [private] |
float EMAN::nnSSNR_ctfReconstructor::m_snr [private] |
string EMAN::nnSSNR_ctfReconstructor::m_symmetry [private] |
int EMAN::nnSSNR_ctfReconstructor::m_vnx [private] |
int EMAN::nnSSNR_ctfReconstructor::m_vnxc [private] |
Definition at line 1277 of file reconstructor.h.
Referenced by buildFFTVolume(), buildNorm2Volume(), buildNorm3Volume(), buildNormVolume(), finish(), and setup().
int EMAN::nnSSNR_ctfReconstructor::m_vnxp [private] |
Definition at line 1276 of file reconstructor.h.
Referenced by buildFFTVolume(), finish(), and setup().
int EMAN::nnSSNR_ctfReconstructor::m_vny [private] |
int EMAN::nnSSNR_ctfReconstructor::m_vnyc [private] |
int EMAN::nnSSNR_ctfReconstructor::m_vnyp [private] |
Definition at line 1276 of file reconstructor.h.
Referenced by buildFFTVolume(), buildNorm2Volume(), buildNorm3Volume(), buildNormVolume(), finish(), and setup().
int EMAN::nnSSNR_ctfReconstructor::m_vnz [private] |
int EMAN::nnSSNR_ctfReconstructor::m_vnzc [private] |
int EMAN::nnSSNR_ctfReconstructor::m_vnzp [private] |
Definition at line 1276 of file reconstructor.h.
Referenced by buildFFTVolume(), buildNorm2Volume(), buildNorm3Volume(), buildNormVolume(), finish(), and setup().
EMData* EMAN::nnSSNR_ctfReconstructor::m_volume [private] |
Definition at line 1262 of file reconstructor.h.
Referenced by buildFFTVolume(), finish(), insert_padfft_slice(), nnSSNR_ctfReconstructor(), and ~nnSSNR_ctfReconstructor().
int EMAN::nnSSNR_ctfReconstructor::m_weighting [private] |
float EMAN::nnSSNR_ctfReconstructor::m_wghta [private] |
float EMAN::nnSSNR_ctfReconstructor::m_wghtb [private] |
EMData* EMAN::nnSSNR_ctfReconstructor::m_wptr [private] |
Definition at line 1263 of file reconstructor.h.
Referenced by buildNormVolume(), finish(), insert_padfft_slice(), nnSSNR_ctfReconstructor(), and ~nnSSNR_ctfReconstructor().
EMData* EMAN::nnSSNR_ctfReconstructor::m_wptr2 [private] |
Definition at line 1264 of file reconstructor.h.
Referenced by buildNorm2Volume(), finish(), insert_padfft_slice(), nnSSNR_ctfReconstructor(), and ~nnSSNR_ctfReconstructor().
EMData* EMAN::nnSSNR_ctfReconstructor::m_wptr3 [private] |
Definition at line 1265 of file reconstructor.h.
Referenced by buildNorm3Volume(), finish(), insert_padfft_slice(), nnSSNR_ctfReconstructor(), and ~nnSSNR_ctfReconstructor().
const string nnSSNR_ctfReconstructor::NAME = "nnSSNR_ctf" [static] |
int EMAN::nnSSNR_ctfReconstructor::wiener [private] |