Thanks Ahmad for being willing to contribute, and thanks Shri for coaching him 
on the process.

Ahmad, yes, each of the 2 events will need both an event function to detect the 
event, and a corresponding callback function to handle the event. In my opinion 
cpf_nose_event() and cps_nose_event_cb() are probably the simplest to use as 
templates.

On another note, let’s move any further discussion of this implementation to 
the MATPOWER-DEV-L list 
<http://www.pserc.cornell.edu/matpower/mailinglists.html#devlist>.

Thanks,

    Ray


> On May 10, 2017, at 1:55 PM, Abhyankar, Shrirang G. <[email protected]> wrote:
> 
> Thanks for agreeing to contribute your code. I believe it would be a great 
> addition to MATPOWER’s CPF. 
> 
> It would be good if you can write separate functions for each event type. If 
> its too much for you, then you can write one event function for now. We can 
> work on splitting it later.
> 
> Shri
> 
> From: Ahmad Sadiq Abubakar <[email protected] 
> <mailto:[email protected]>>
> Reply-To: MATPOWER discussion forum <[email protected] 
> <mailto:[email protected]>>
> Date: Wednesday, May 10, 2017 at 12:15 PM
> To: MATPOWER discussion forum <[email protected] 
> <mailto:[email protected]>>
> Subject: Re: CPF termination
> 
> Hi Shrirang,
> Thanks once again.
> Yes, I will be honoured to contribute my codes to matpower once it's ready.
> To implement my written event function for cpf termination, (e.g. 
> cpf_Vlimit_event or cpf_Llimit_event) does each of these need a separate 
> callback function?
> 
> Alternatively, I thought of implementing this in similar manner as the 
> cpf.enforce_q_lims. Kindly advice
> 
> On May 10, 2017 5:25 PM, "Abhyankar, Shrirang G." <[email protected] 
> <mailto:[email protected]>> wrote:
> Hi Ahmad,
>   If you are referring to cpf_default_callback.m then NO, you do need to 
> modify it. The callback function(s) are basically “post-step” that do not 
> alter the cpf. They are meant to be used for tracking system states for 
> logging, visualization, or other similar needs. 
> 
> Would you be willing to contribute your code to MATPOWER? I can work with you 
> on cleaning up the code once it is ready.
> 
> Thanks,
> Shri
> 
> 
> From: Ahmad Sadiq Abubakar <[email protected] 
> <mailto:[email protected]>>
> Reply-To: MATPOWER discussion forum <[email protected] 
> <mailto:[email protected]>>
> Date: Wednesday, May 10, 2017 at 7:44 AM
> To: MATPOWER discussion forum <[email protected] 
> <mailto:[email protected]>>
> Subject: Re: CPF termination
> 
> Hi Shrirang,
> 
> Thank you for the insight. I try to use cpf_target_lam_event as template, do 
> I also need to write a callback function for my Vlimts and Llimits event? or 
> modify the default callback function for cpf termination?
> 
> Kindly excuse my too basic questions, I am novice in coding.
> 
> In anticipation of your reply
> 
> 
> On Apr 25, 2017 6:45 PM, "Abhyankar, Shrirang G." <[email protected] 
> <mailto:[email protected]>> wrote:
> Ahmad,
>   You need to implement an event function (see section 5.5 of the manual) for 
> cpf with logic on how you want cpf to terminate. There are a few event 
> functions currently implemented — nose point detection, target limit, 
> active/reactive power limits — but there is no user-defined event function 
> support yet. So, here’s what you’ll need to do:
> 
> i) Use cpf_nose_event.m or cpf_target_lam_event as a template to write your 
> own event function. 
> I) Modify runcpf code to register your event function (see lines 173-190 on 
> how different event functions are registered).
> 
> Let us know if you need more help.
> 
> Shri
> 
> From: Ahmad Sadiq Abubakar <[email protected] 
> <mailto:[email protected]>>
> Reply-To: MATPOWER discussion forum <[email protected] 
> <mailto:[email protected]>>
> Date: Tuesday, April 25, 2017 at 1:22 PM
> To: "[email protected] <mailto:[email protected]>" 
> <[email protected] <mailto:[email protected]>>
> Subject: CPF termination
> 
> Hi,
> I want to run cpf such that, it stops either at Vmax, Vmin, or ratedA, ratedB 
> and ratedC. In other words, cpf termination should respect bus voltage limits 
> and line thermal limit constraints.
> 
> Kindly assist on how to implement the codes.

Reply via email to