Finds decomposition to most stable entry

        Args:
            entry (PourbaixEntry): PourbaixEntry corresponding to
                compound to find the decomposition for
            pH (float): pH at which to find the decomposition
            V (float): voltage at which to find the decomposition

        Returns:
            reaction corresponding to the decomposition

def get_decomposition_energy(self, entry, pH, V):
        """
        Finds decomposition to most stable entry

        Args:
            entry (PourbaixEntry): PourbaixEntry corresponding to
                compound to find the decomposition for
            pH (float): pH at which to find the decomposition
            V (float): voltage at which to find the decomposition

        Returns:
            reaction corresponding to the decomposition
        """
        # Find representative multientry
        if self._multielement and not isinstance(entry, MultiEntry):
            possible_entries = self._generate_multielement_entries(
                self._filtered_entries, forced_include=[entry])

            # Filter to only include materials where the entry is only solid
            if entry.phase_type == "solid":
                possible_entries = [e for e in possible_entries
                                    if e.phase_type.count("Solid") == 1]
            possible_energies = [e.normalized_energy_at_conditions(pH, V)
                                 for e in possible_entries]
        else:
            possible_energies = [entry.normalized_energy_at_conditions(pH, V)]

        min_energy = np.min(possible_energies, axis=0)

        # Find entry and take the difference
        hull = self.get_hull_energy(pH, V)
        return min_energy - hull