Please unsubscribe me from your email list.  I did not ask to be on this
list.

On Mon, Jan 13, 2020 at 10:57 AM Brunswick Computers <
k...@brunswickcomputerservice.com> wrote:

>
>
>
>
> REMOVE this email address from your spam.
>
>
>
>
>
> *From:* bounce-124269900-85421...@list.cornell.edu <
> bounce-124269900-85421...@list.cornell.edu> *On Behalf Of *Florian
> Bennewitz
> *Sent:* Monday, January 13, 2020 10:43 AM
> *To:* MATPOWER-DEV-L@cornell.edu
> *Subject:* implementation of generator reactive power capability curve in
> load flow
>
>
>
> Hello everybody,
>
>
>
> first of all I wish you a happy new year.
>
>
>
> For the purpose of my thesis, I needed to consider more detailed reactive
> power limits of synchronous generators. This mainly includes the influence
> of the terminal voltage to the operation chart of the generators. Hence I
> wrote the function genreacpowercapcurve_rev() (see attachment), which is
> implemented in runpf_rev() directly before the lines, where gens with
> violated Q constraints are identified (see further annotations to
> runpf_rev() below). Basically, genreacpowercapcurve_rev() calculates the
> Q-limits of each generator according to the well-known operating chart.
>
>
>
> Some annotations regarding genreacpowercapcurve_rev():
>
>    - The calculation of the operation chart of a round-rotor-generator
>    needs one further parameter, the stationary reactance in the d-axis. For my
>    purpose, I wrote that number in gen(:,13), because I do not use any
>    OPF-code from Matpower. However, salient-pole-generators are currently not
>    considered.
>    - One further parameter needed is the so called practical static
>    stability limit, which defines a safety margin to the theoretical static
>    stability limit at theta=90° at the under-excited side of the operating
>    chart. I included this as mpopt.pf.static_stab_lim, which is by default
>    70°.
>    - The set point regarding active power injection can be inadmissible
>    in the theoretical case of very low terminal voltages. Currently, this is
>    considered to be an infeasible problem.
>    - The rated voltage of the generator is currently set to the base
>    voltage of the terminal bus, which might not be true in general.
>
>
>
> Some annotations regarding runpf_rev():
>
>    - The application of the reactive power capability curve is activated
>    with mpopt.pf.consider_q_cap_curve, which is 0 by default.
>    - The application of voltage-dependent-reactive-power-limits yielded a
>    problem with the PV-PQ-change of generator-busses, which violate their
>    reactive power limits. In the original runpf(), in this case a generator is
>    fixed to the reactive power limit by converting its [Pg,Qg_lim] to a
>    negative load, i.e. -[Pg,Qg_lim] are stored in mpc.bus. Thereafter, the
>    limited power injection remains unchanged in further iterations. This is
>    correct, if the respective reactive power limit does not change further;
>    but it is wrong, if the reactive power limit changes with terminal voltage
>    magnitude. Hence, further iterations are needed, until the limited reactive
>    power injection shows convergence with the terminal voltage magnitude.
>    However, this issue caused some changes in the runpf_rev(), which I tried
>    to comment thoroughly. The relevant rows in runpf_rev() are the following
>    ones:
>       - rows 196, 203-205: some initializations
>       - rows  246-256: implementation of genreacpowercapcurve()
>       - row 263: adaption of if-clause
>       - rows 301-346: correction of PV-PQ-change and calculation of
>       ratio_qg_change, which indicates the aforementioned convergence behavior
>    - The convergence of the outer loop is assumed, if ratio_qg_change <
>    mpopt.pf. q_lim_gen_tol, which is 0.01 by default.
>
>
>
> A first small test looks fine for me. However, I guess there are major
> possibilities to improve this, at least my style of writing this code. ;)
> So hopefully there will be some good ideas on this.
>
>
>
> Last but not least a huge thank-you for the tremendous work on Matpower to
> Dr. Zimmermann and all the others!
>
> Kind regards from Germany,
>
> Florian Bennewitz
>

Reply via email to