1 – Did you mean PMAX is zero and PMIN is negative? PMAX must always be greater than or equal to PMIN. If you are using market type 5, the cleared bid/offer prices should be equal to the LAM_P for the corresponding bus, except when a positive PMIN limit is binding. As you say, a negative LAM_P is possible, but unusual when all bids and offers are positive.
2 – That they are not equal is not unexpected, especially if there is congestion or losses in the network, but normally the revenue would be higher than the cost. I suggest you turn the OUT_ALL option on and take a look at what constraints are binding, what the dispatches and nodal prices look like, etc. and see if the solution looks reasonable. If the OPF is resulting in some negative LAM_P values, you might even perturb the load at that bus a bit and observe the change in dispatch to find out the source of the negative price (since the price is a sensitivity of the objective function to changes in load). Hope this helps, -- Ray Zimmerman Senior Research Associate B30 Warren Hall, Cornell University, Ithaca, NY 14853 phone: (607) 255-9645 On Jul 11, 2013, at 12:31 PM, "Hardy, Trevor" <[email protected]> wrote: > I’ve been continuing in my efforts of implementing the smartmarket > functionality with my 240 bus model. I’m in process of writing my own > results scripts and have come across a few oddities which I suspect are > related: > > 1 – Even though all offer and bid prices and quantities are positive, the > cleared bid contains negative prices with positive quantities . I’m running > the market using market type 5 (uniform price set by last cleared marginal > unit) and have used load2disp to convert fixed loads to dispatchable loads > with very high prices. The Pmax on all these values are negative and the > Pmins are zero. This is seeming to indicate that the loads are being paid to > consume which is not unreasonable but a bit suspicious. > > 2 – Perhaps relatedly, the sum of the revenue from the cleared offers and the > outlays from the bids is not equal. I found the per gen/load values by… > > gen_revenue = sum(output.co.P.prc .* output.co.P.qty,2); > load_cost = sum(output.cb.P.prc .* output.cb.P.qty,2); > > … and then summed those column vectors. > > For the simulation period in question I get a revenue of ~$20M and a cost of > ~$37M; not a small enough difference to ignore. It seems like these must be > equal but maybe I am misunderstanding something. > > Trevor
