code: def _calc_eff_prop(self, inlets=None, outlets=None,
                         domain_area=None, domain_length=None):
          r
          if self.settings['quantity'] not in self.keys():
              raise Exception('The algorithm has not been run yet. Cannot ' +
                              'calculate effective property.')
  
          Ps = np.isfinite(self['pore.bc_value'])
          BCs = np.unique(self['pore.bc_value'][Ps])
          Dx = np.abs(np.diff(BCs))
          if inlets is None:
              inlets = self._get_inlets()
          flow = self.rate(pores=inlets)
          # Fetch area and length of domain
          if domain_area is None:
              domain_area = self._get_domain_area(inlets=inlets,
                                                  outlets=outlets)
          if domain_length is None:
              domain_length = self._get_domain_length(inlets=inlets,
                                                      outlets=outlets)
          D = np.sum(flow)*domain_length/domain_area/Dx
          return D
docs: r"""
          Calculate the effective transport through the network
  
          Parameters
          ----------
          inlets : array_like
              The pores where the inlet boundary conditions were applied.  If
              not given an attempt is made to infer them from the algorithm.
  
          outlets : array_like
              The pores where the outlet boundary conditions were applied.  If
              not given an attempt is made to infer them from the algorithm.
  
          domain_area : scalar
              The area of the inlet and/or outlet face (which shold match)
  
          domain_length : scalar
              The length of the domain between the inlet and outlet faces
  
          Returns
          -------
          The effective transport property through the network