def _runOPF(self):
        """ Computes dispatch points and LMPs using OPF.
        """
        if self.decommit:
            solver = UDOPF(self.case, dc=(self.locationalAdjustment == "dc"))
        elif self.locationalAdjustment == "dc":
            solver = OPF(self.case, dc=True)
        else:
            solver = OPF(self.case, dc=False, opt={"verbose": True})

        self._solution = solver.solve()

#        for ob in self.offers + self.bids:
#            ob.f = solution["f"]

        return self._solution["converged"]