亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? auction.m

?? 以上所傳的內容為電力系統比較全面的分析程序,才用的是matlab編寫m的文件
?? M
字號:
function [cq, cp] = auction(bus, gen, gencost, q, p, max_p, auction_type, mpopt)%AUCTION  Clear auction based on OPF results.%   [cq, cp] = auction(bus, gen, gencost, q, p, max_p, auction_type, mpopt)%   Clears a set of bids and offers based on the results of an OPF, where the pricing%   is adjusted for network losses and binding constraints. There are 8 types%   of auctions implemented here, specified by auction_type.%%      0 - discriminative pricing (price equal to offer or bid)%      1 - last accepted offer auction%      2 - first rejected offer auction%      3 - last accepted bid auction%      4 - first rejected bid auction%      5 - first price auction (marginal unit, offer or bid, sets the price)%      6 - second price auction (if offer is marginal, price set by min(FRO,LAB), else max(FRB,LAO)%      7 - split the difference pricing (price set by last accepted offer and bid)%      8 - LAO sets seller price, LAB sets buyer price%   MATPOWER%   $Id: auction.m,v 1.6 2004/09/15 18:44:28 ray Exp $%   by Ray Zimmerman, PSERC Cornell%   Copyright (c) 1996-2004 by Power System Engineering Research Center (PSERC)%   See http://www.pserc.cornell.edu/matpower/ for more info.%%-----  initialization  -----%% default parametersif nargin < 8    mpopt = mpoption;       %% use default options    if nargin < 7        auction_type = 1;       %% use 1st price by default    endend%% optionsverbose = mpopt(31);if have_fcn('minopf')    zero_tol = 1e-5;else    zero_tol = 0.1;     %% fmincon is SO bad with prices that it is                        %% NOT recommended for use with auction.mend%% define named indices into data matrices[PQ, PV, REF, NONE, BUS_I, BUS_TYPE, PD, QD, GS, BS, BUS_AREA, VM, ...    VA, BASE_KV, ZONE, VMAX, VMIN, LAM_P, LAM_Q, MU_VMAX, MU_VMIN] = idx_bus;[GEN_BUS, PG, QG, QMAX, QMIN, VG, MBASE, ...    GEN_STATUS, PMAX, PMIN, MU_PMAX, MU_PMIN, MU_QMAX, MU_QMIN] = idx_gen;[AREA_I, PRICE_REF_BUS] = idx_area;%% initialize some stuff[ng, np] = size(q);cq      = zeros(size(q));                   %% cleared quantity offerscp      = zeros(size(p));                   %% cleared price offersin      = find(gen(:, GEN_STATUS) >= 0);    %% which gens are in the game (non-reserve)                                            %% (NOTE: can include some that are off-line)G       = find( gen(in, PMIN) >= 0 | gen(in, PMAX) > 0 );   %% real generatorsL       = find( gen(in, PMIN) < 0 & gen(in, PMAX) <= 0 );   %% variable loadsqin     = q(in, :);             %% reduce quantity offers ...pin     = p(in, :);             %% ... and price offers to those gens that are "in"cqin    = cq(in, :);cpin    = cp(in, :);%% determine cleared quantitiesPg = gen(in, PG);           %% active generation from generators that are "in"Pg(L) = -Pg(L);             %% make quantity positive for loadsaccept = zeros(size(qin));for i = 1:length(in)        %% generator in(i)    for j = 1:np                %% block j        if qin(i, j)                    %% ignore zero quantity offers            %% compute fraction of the block accepted ...            accept(i, j) = (Pg(i) - sum(qin(i, 1:j-1))) / qin(i, j);            %% ... clipped to the range [0, 1]  (i.e. 0-100%)            if accept(i, j) > 1                accept(i, j) = 1;            elseif accept(i, j) < 1.0e-5                accept(i, j) = 0;            end            cqin(i, j) = qin(i, j) * accept(i, j);        end    endendon  = (accept  > 0);off = (accept == 0);all_ones  = ones(size(pin));all_zeros = zeros(size(pin));%% get nodal marginal prices from OPFgbus    = gen(in, GEN_BUS);                     %% indices of buses w/genslamP    = diag(bus(gbus, LAM_P)) * all_ones;    %% real power priceslamQ    = diag(bus(gbus, LAM_Q)) * all_ones;    %% reactive power prices%% compute fudge factor for lamP to include price of bundled reactive powernz          = find( gen(L, PG) );pf          = all_zeros;                        %% for loads Q = pf * Ppf(L(nz))   = gen(L(nz), QG) ./ gen(L(nz), PG);Qfudge      = all_zeros;Qfudge(L,:) = diag(pf(L)) * lamQ(L,:);%%-----  compute shift matrices to add to lamP to get desired pricing  -----%% If refP is the lambda P at an arbitrary reference bus, and normP is%% the set of offers/bids normalized to the refbus location with bids%% normalized to include bundled reactive power as well, then%%     gap = normP - refP%% In other words, (gap + refP) can be used to form the normal%% non-locational bid/offer stack. And since refP is just a constant%% it doesn't actually change the shape of the stacks.gap = pin - lamP - Qfudge;DISC_P  = gap;DISC_PQ = gap + Qfudge;LAO = on(G,:) .* gap(G,:) - off(G,:) * max_p;LAO( find(LAO(:) > zero_tol) ) = -max_p;    %% don't let gens at Pmin set priceLAO = max( LAO(:) ) * all_ones;FRO = off(G,:) .* gap(G,:) + on(G,:) * max_p;FRO = min( FRO(:) ) * all_ones;if ~isempty(L)    LAB_P = on(L,:) .* gap(L,:) + off(L,:) * max_p;    LAB_P = min( LAB_P(:) ) * all_ones;        FRB_P = off(L,:) .* gap(L,:) - on(L,:) * max_p;    FRB_P = max( FRB_P(:) ) * all_ones;else    LAB_P = max_p * all_ones;    FRB_P = LAB_P;endLAB_PQ = LAB_P + Qfudge;FRB_PQ = FRB_P + Qfudge;%% generator and load price shifts for different auction typesif auction_type == 0    G_shift = DISC_P;    L_shift = DISC_PQ;elseif auction_type == 1    G_shift = LAO;    L_shift = LAO + Qfudge;elseif auction_type == 2    G_shift = FRO;    L_shift = FRO + Qfudge;elseif auction_type == 3    G_shift = LAB_P;    L_shift = LAB_PQ;elseif auction_type == 4    G_shift = FRB_P;    L_shift = FRB_PQ;elseif auction_type == 5    G_shift = all_zeros;    L_shift = Qfudge;elseif auction_type == 6    if abs(LAO(1,1)) < zero_tol        G_shift = min(FRO(1,1),LAB_P(1,1)) * all_ones;        L_shift = min(FRO(1,1),LAB_P(1,1)) + Qfudge;    else        G_shift = max(LAO(1,1),FRB_P(1,1)) * all_ones;        L_shift = max(LAO(1,1),FRB_P(1,1)) + Qfudge;    endelseif auction_type == 7    G_shift = (LAO + LAB_P) / 2;    L_shift = (LAO + LAB_P) / 2 + Qfudge;elseif auction_type == 8    G_shift = LAO;    L_shift = LAB_PQ;end%% compute the pricescpin(G,:) = lamP(G,:) + G_shift(G,:);cpin(L,:) = lamP(L,:) + L_shift(L,:);%% clip prices by offers and bidsclip = on .* (pin - cpin);cpin(G,:) = cpin(G,:) + (clip(G,:) > zero_tol) .* clip(G,:);cpin(L,:) = cpin(L,:) + (clip(L,:) < -zero_tol) .* clip(L,:);%% make prices uniform after clipping (except for discrim auction)%% since clipping may only affect a single block of a multi-block generatorif auction_type ~= 0 & np > 1    cpin(G,:) = diag(max(cpin(G,:)')) * all_ones(G,:);  %% equal to largest price in row    cpin(L,:) = diag(min(cpin(L,:)')) * all_ones(L,:);  %% equal to smallest price in rowendcq(in, :) = cqin;cp(in, :) = cpin;%%-----  plot offers, adjusted offers, prices  -----if verbose    %% compute locational adjustment for generators    ref_p = max(lamP(:,1));    % ref_p = max(bus(:, LAM_P));    adjustment = ref_p - lamP(:,1);                     %% locational price adjustment        %% form 1-d vectors of all valid offers & corresponding adjustments, acceptance    i = find(qin & pin <= max_p);    qq = qin(i);                            %% quantity vector    pp = pin(i);                            %% price vector    adj = diag(adjustment) * all_ones;      %% adjustment matrix    adj = adj(i);                           %% adjustment vector    adj_pp = pp + adj;                      %% adjusted offer price vector    acc = accept(i);                        %% acceptance vector    final_p = cpin;    final_p = final_p(i);        %% sort by adjusted price    [junk, k] = sort(adj_pp);    qq = qq(k);    pp = pp(k);    adj = adj(k);    adj_pp = adj_pp(k);    acc = acc(k);    final_p = final_p(k);    %% plot it    subplot(1,1,1);    xd = [0; cumsum(qq)];    [xs, ys1] = stairs(xd, [pp; pp(length(pp))]);    [xs, ys2] = stairs(xd, [adj_pp; adj_pp(length(adj_pp))]);    [xs, ys3] = stairs(xd, [acc; acc(length(acc))]);    [xs, ys4] = stairs(xd, [final_p; final_p(length(final_p))]);    [xs1, ys5] = stairs([0 sum(Pg) sum(qq)], [0 100 100]);    plot(xs, ys2, 'r--');       %% adjusted offers    axis([0 1.1*max(xd) 0 max([110, 1.1*max(adj_pp)])]);    hold on;    plot(xs, ys1, 'y-.');       %% unadjusted offers    plot(xs, 100*ys3, 'b:');    %% percent of block accepted    plot(xs, ys4, 'g');         %% price paid%   plot(xs1, ys5, 'b');    hold off;    drawnow;endreturn;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人国产一区二区三区精品| 青青青伊人色综合久久| 不卡视频在线观看| 国产精品毛片久久久久久久| 国产风韵犹存在线视精品| 中文无字幕一区二区三区| 成人h动漫精品一区二区| 亚洲日本护士毛茸茸| 在线视频国内自拍亚洲视频| 蜜臂av日日欢夜夜爽一区| 久久综合999| 91丨porny丨国产入口| 亚洲一区精品在线| 日韩精品一区二区三区视频在线观看| 国产在线国偷精品产拍免费yy| 亚洲欧洲在线观看av| 欧美视频一区二区三区| 另类调教123区| 中文字幕亚洲一区二区av在线| 欧美色图天堂网| 久久超碰97人人做人人爱| 综合av第一页| 欧美一区二区三区在线看| 国产mv日韩mv欧美| 亚洲一区中文日韩| 欧美va在线播放| 91免费精品国自产拍在线不卡| 日日欢夜夜爽一区| 国产精品国产三级国产aⅴ原创| 欧美日韩和欧美的一区二区| 国产高清在线精品| 午夜电影一区二区三区| 国产精品成人免费在线| 欧美成人一区二区三区| 色婷婷亚洲综合| 国产美女精品人人做人人爽| 亚洲福利视频三区| 国产精品久久久久久久午夜片| 欧美绝品在线观看成人午夜影视| 成人亚洲一区二区一| 全部av―极品视觉盛宴亚洲| 亚洲狼人国产精品| 中文字幕欧美激情一区| 日韩三级高清在线| 在线视频国内自拍亚洲视频| 成人激情动漫在线观看| 免费亚洲电影在线| 亚洲国产日日夜夜| 中文字幕一区二区在线观看| 欧美精品一区二区精品网| 欧美日本在线播放| 在线免费观看视频一区| 成人精品小蝌蚪| 国产精品69久久久久水密桃| 毛片一区二区三区| 天天影视色香欲综合网老头| 亚洲欧美激情插 | 中国av一区二区三区| 欧美一二三四区在线| 欧美性三三影院| 91国内精品野花午夜精品| 成人av片在线观看| 国产iv一区二区三区| 久久精品国内一区二区三区 | 日韩二区三区四区| 亚洲午夜影视影院在线观看| 亚洲欧美日韩久久| 亚洲品质自拍视频网站| 18欧美乱大交hd1984| 亚洲欧洲国产日韩| 日韩毛片精品高清免费| 国产精品麻豆视频| 中文字幕精品一区二区精品绿巨人| 久久久99久久| 国产日韩欧美综合一区| 久久九九99视频| 中文乱码免费一区二区| 中文字幕中文字幕在线一区 | 在线观看日韩国产| 91黄视频在线观看| 欧美特级限制片免费在线观看| 色婷婷av一区二区三区gif| 91黄色小视频| 欧美精品 日韩| 欧美刺激午夜性久久久久久久| 欧美videos大乳护士334| 亚洲精品在线免费观看视频| 久久精品夜色噜噜亚洲aⅴ| 国产亚洲1区2区3区| 国产精品久久久久久久久图文区| 中文字幕日韩一区| 一区二区三区蜜桃网| 天天综合色天天综合| 久久99精品久久久久久动态图| 久久se精品一区精品二区| 国产精品系列在线观看| 色欧美乱欧美15图片| 欧美亚洲图片小说| 欧美va亚洲va国产综合| 亚洲国产精品成人综合| 一区二区三区资源| 青青草精品视频| 成人精品视频.| 欧美色图12p| 精品少妇一区二区三区视频免付费| 久久日一线二线三线suv| 亚洲天堂成人在线观看| 五月综合激情日本mⅴ| 国产乱码一区二区三区| 一本到三区不卡视频| 日韩视频中午一区| 国产精品视频九色porn| 亚洲va国产天堂va久久en| 极品少妇xxxx偷拍精品少妇| 99这里只有久久精品视频| 91精品婷婷国产综合久久性色| 久久久午夜精品| 亚洲成人免费视频| 国产成人av影院| 欧美午夜影院一区| 国产日韩欧美精品一区| 亚洲va欧美va天堂v国产综合| 成人激情午夜影院| 日韩三级视频中文字幕| 一区二区三区四区国产精品| 国产精品系列在线观看| 91精品国产乱| 亚洲美女在线国产| 国产资源在线一区| 欧美天堂一区二区三区| 欧美国产亚洲另类动漫| 青草国产精品久久久久久| 91成人免费电影| 国产精品国产三级国产普通话99 | 国产精品性做久久久久久| 欧美日本视频在线| 亚洲免费观看高清完整版在线| 久久国产三级精品| 欧美日韩mp4| 一区二区三区产品免费精品久久75| 国产精品综合一区二区三区| 欧美一区二区在线免费播放 | 综合久久一区二区三区| 国产一区二区女| 欧美一级二级在线观看| 香蕉影视欧美成人| 欧美在线影院一区二区| 中文字幕一区二区三区色视频 | 欧美精品一区在线观看| 日欧美一区二区| 欧美日韩国产综合视频在线观看| 亚洲精品国产a| 91国产成人在线| 亚洲少妇30p| 成人av网站在线观看免费| 日本一区二区三区免费乱视频 | 亚洲成av人片一区二区梦乃| 91成人看片片| 亚洲一区二区三区四区的 | www.66久久| 国产精品视频免费看| 丁香婷婷综合激情五月色| 国产午夜精品福利| 国产成人av电影在线| 国产亚洲成aⅴ人片在线观看 | 麻豆国产精品视频| 日韩美女在线视频| 久久99日本精品| 久久久99精品久久| 成人高清免费在线播放| 中文字幕久久午夜不卡| 成人18精品视频| 亚洲精品日韩综合观看成人91| 日本高清不卡视频| 亚洲国产日韩在线一区模特| 欧美日韩精品一区二区三区蜜桃| 亚洲成人午夜影院| 欧美一区二区网站| 激情图片小说一区| 国产精品色噜噜| 欧美亚洲一区二区三区四区| 肉丝袜脚交视频一区二区| 精品国产乱码久久久久久蜜臀 | 夜夜爽夜夜爽精品视频| 欧美日韩高清一区二区三区| 奇米影视在线99精品| 精品久久久久一区| av综合在线播放| 亚洲国产va精品久久久不卡综合| 777久久久精品| 国产自产v一区二区三区c| 一区在线观看免费| 欧美日韩视频在线一区二区| 六月丁香婷婷色狠狠久久| 国产欧美综合色| 欧美色中文字幕| 国产精品自拍一区| 亚洲宅男天堂在线观看无病毒| 欧美成人在线直播| 91美女在线看|