Daniel@0: function bigpot = multiply_by_pot(bigpot, smallpot, varargin) Daniel@0: % MULTIPLY_BY_POT bigpot *= smallpot for cpot Daniel@0: % bigpot = multiply_by_pot(bigpot, smallpot) Daniel@0: % Daniel@0: % smallpot's domain must be a subset of bigpot's domain. Daniel@0: Daniel@0: bigpot.g = bigpot.g + smallpot.g; Daniel@0: if sum(smallpot.sizes) > 0 Daniel@0: mask = find_equiv_posns(smallpot.domain, bigpot.domain); Daniel@0: u = block(mask, bigpot.sizes); Daniel@0: bigpot.h(u) = bigpot.h(u) + smallpot.h; Daniel@0: bigpot.K(u, u) = bigpot.K(u, u) + smallpot.K; Daniel@0: end