45 #ifndef CLIPPER_HKL_OPERATORS 46 #define CLIPPER_HKL_OPERATORS 48 #include "hkl_datatypes.h" 58 HKL_data<Flag_bool> operator &(
const HKL_data_base& d1,
const HKL_data_base& d2 );
59 HKL_data<Flag_bool> operator |(
const HKL_data_base& d1,
const HKL_data_base& d2 );
60 HKL_data<Flag_bool> operator ^(
const HKL_data_base& d1,
const HKL_data_base& d2 );
61 HKL_data<Flag_bool> operator !(
const HKL_data_base& d1 );
63 HKL_data<Flag_bool> operator ==(
const HKL_data<Flag>& d1,
const int& n );
64 HKL_data<Flag_bool> operator !=(
const HKL_data<Flag>& d1,
const int& n );
65 HKL_data<Flag_bool> operator >=(
const HKL_data<Flag>& d1,
const int& n );
66 HKL_data<Flag_bool> operator <=( const HKL_data<Flag>& d1,
const int& n );
67 HKL_data<Flag_bool> operator >(
const HKL_data<Flag>& d1,
const int& n );
68 HKL_data<Flag_bool> operator <( const HKL_data<Flag>& d1,
const int& n );
71 template<
class dtype> F_phi<dtype> operator +(
const F_phi<dtype>& d1,
const F_phi<dtype>& d2 );
72 template<
class dtype> F_phi<dtype> operator -(
const F_phi<dtype>& d1,
const F_phi<dtype>& d2 );
73 template<
class dtype> F_phi<dtype> operator -(
const F_phi<dtype>& d1 );
74 template<
class dtype> ABCD<dtype> operator +(
const ABCD<dtype>& d1,
const ABCD<dtype>& d2 );
77 template<
class dtype> HKL_data<F_phi<dtype> > operator +(
const HKL_data<F_phi<dtype> >& d1,
const HKL_data<F_phi<dtype> >& d2 );
78 template<
class dtype> HKL_data<F_phi<dtype> > operator -(
const HKL_data<F_phi<dtype> >& d1,
const HKL_data<F_phi<dtype> >& d2 );
79 template<
class dtype> HKL_data<F_phi<dtype> > operator *(
const HKL_data<F_phi<dtype> >& d1,
const ftype& s );
80 template<
class dtype> HKL_data<F_phi<dtype> > operator -(
const HKL_data<F_phi<dtype> >& d1 );
81 template<
class dtype> HKL_data<ABCD<dtype> > operator +(
const HKL_data<ABCD<dtype> >& d1,
const HKL_data<ABCD<dtype> >& d2 );
82 template<
class dtype> HKL_data<F_phi<dtype> > operator *(
const ftype& s,
const HKL_data<F_phi<dtype> >& d1 ) {
return d1*s; }
109 const ftype& operator[] (
const int& p )
const {
return q[p]; }
111 ftype& operator[] (
const int& p ) {
return q[p]; }
115 int size()
const {
return q.size(); }
119 std::vector<ftype> q;
reflection class
Definition: coords.h:86
static const ftype & twopi()
2 pi
Definition: clipper_util.h:162
ftype64 ftype
ftype definition for floating point representation
Definition: clipper_precision.h:58
int size() const
return num. of phases
Definition: hkl_operators.h:115
Reflection data type: Hendrickson-Lattman coeff.
Definition: hkl_datatypes.h:363
Log phase probability distribution object.
Definition: hkl_operators.h:96
ftype phase(const int &p) const
return phase associated with index
Definition: hkl_operators.h:113
static int sampling()
return phase sampling
Definition: hkl_operators.h:116
Reflection data type: best phi + fom.
Definition: hkl_datatypes.h:334