Hi Team,

Hope everyone is doing good. I again need your help to move ahead with my program :).

Can we use Event weighted Standard Deviation functions directly in PI ACE. I don't want to make a SDK call and using Summaries to find this out.

when i tried finding out the inbuilt function , I got only Time weighted standard deviation of archive values.

The user wants to compare the results of PIACE output tags with the excel based PIAdvCalcVal(Tag,"*-1h","*","stdev","event-weighted", 0, 1, 0,"TestServer") function. which will never match.

Please let me know How can I calculate Event weighted Stdev for a particular interval.

Many Thanks,

Prabhat Mishra

Hello Prabhat,

PI ACE Reference manual (\PIPC\ACE\Help\PIACEReference.chm) lists 2 additional functions for standard deviation calculation: SStDev and PStDev (PIACEBIFunctions class). Using them requires that you retrieve the list of events (values) falling into the calculation period.

Maybe there is also an easy way transferring time-weighted into event-weighted standard deviation. When an event-weighted total is needed, using the EventCount and multiplying it with the TagMean (event-weighted average) does the trick. I assume similar might be possible for event-weighted standard deviations. Maybe someone in the community better recalls how standard deviation calculation is done and can make a suggestion.

I have checked OSIsoft Technical Support database since I expected this question was raised earlier already. The following additional approaches were mentioned:

- Using a calculated tag (PI Totalizer) for the calculation of event weighted standard deviation.

- Using PI-SDK within ACE (PIData.Summaries method - see PI-SDK Help at \PIPC\Help\pisdk.chm)

You will find complementary information about calculation functions of PI ACE in the PI Performance Equation Reference manual (PIPC\Help\PEReference.chm).

Gregor