Exemplo n.º 1
0
    def covariance(self,p1,p2,epsilon=1.0e-5):
        h2 = sqdistance(p1,p2,self.get_default_rotmat())

        ret = np.zeros_like(h2)

        for st in self.structures:
            covariance = st.covariance(p1,p2)
            ret += covariance

        if isinstance(h2, np.ndarray):
            idx = np.where(h2 < epsilon)[0]
            if len(idx) > 0:
                ret[idx] = self.max_covariance()

            return ret
        else:
            if h2 < epsilon:
                return self.max_covariance()

            return ret
Exemplo n.º 2
0
    def covariance(self,p1,p2,epsilon=1.0e-5):
        h2 = sqdistance(p1,p2,self.get_default_rotmat())

        ret = np.zeros_like(h2)

        for st in self.structures:
            covariance = st.covariance(p1,p2)
            ret += covariance

        if isinstance(h2, np.ndarray):
            idx = np.where(h2 < epsilon)[0]
            if len(idx) > 0:
                ret[idx] = self.max_covariance()

            return ret
        else:
            if h2 < epsilon:
                return self.max_covariance()

            return ret
Exemplo n.º 3
0
 def covariance(self,p1,p2):
     h2 = sqdistance(p1,p2,self._rotmat)
     h = np.sqrt(h2)
     #print('covariance',p1,p2,h2,h)
     return self._function(h,self.sill,self._range)
Exemplo n.º 4
0
 def covariance(self,p1,p2):
     h2 = sqdistance(p1,p2,self._rotmat)
     h = np.sqrt(h2)
     #print('covariance',p1,p2,h2,h)
     return self._function(h,self.sill,self._range)