def equation(self):
        """Mix-in class that returns matrix rows for difference in head between inside and
        outside equals zeros
        Returns matrix part (nunknowns,neq)
        Returns rhs part nunknowns
        """
        mat = np.empty((self.nunknowns, self.model.neq))
        rhs = np.zeros(self.nunknowns)  # Needs to be initialized to zero
        for icp in range(self.ncp):
            istart = icp * self.nlayers
            ieq = 0
            for e in self.model.elementlist:
                if e.nunknowns > 0:
                    mat[istart:istart + self.nlayers, ieq:ieq + e.nunknowns] = \
                        e.potinflayers(self.xcin[icp], self.ycin[icp], self.layers, aq=self.aqin) / self.aqin.Tcol - \
                        e.potinflayers(self.xcout[icp], self.ycout[icp], self.layers, aq=self.aqout) / self.aqout.Tcol
                    ieq += e.nunknowns
                else:
                    rhs[istart:istart + self.nlayers] -= \
                        e.potentiallayers(self.xcin[icp], self.ycin[icp], self.layers, aq=self.aqin) / self.aqin.T - \
                        e.potentiallayers(self.xcout[icp], self.ycout[icp], self.layers, aq=self.aqout) / self.aqout.T
        return mat, rhs
def equation ( self ) : mat = np . empty ( ( self . nunknowns , self . model . neq ) ) rhs = np . zeros ( self . nunknowns ) for icp in range ( self . ncp ) : istart = icp * self . nlayers ieq = 0 for e in self . model . elementlist : if e . nunknowns > 0 : mat [ istart : istart + self . nlayers , ieq : ieq + e . nunknowns ] = e . potinflayers ( self . xcin [ icp ] , self . ycin [ icp ] , self . layers , aq = self . aqin ) / self . aqin . Tcol - e . potinflayers ( self . xcout [ icp ] , self . ycout [ icp ] , self . layers , aq = self . aqout ) / self . aqout . Tcol ieq += e . nunknowns else : rhs [ istart : istart + self . nlayers ] -= e . potentiallayers ( self . xcin [ icp ] , self . ycin [ icp ] , self . layers , aq = self . aqin ) / self . aqin . T - e . potentiallayers ( self . xcout [ icp ] , self . ycout [ icp ] , self . layers , aq = self . aqout ) / self . aqout . T return mat , rhs
Mix-in class that returns matrix rows for difference in head between inside and
        outside equals zeros
        Returns matrix part (nunknowns,neq)
        Returns rhs part nunknowns