percept_analyzer
Utility functions to operate on percept data.
Utility functions to operate on percept data. These functions should be considered experimental. Behaviour may change in future releases.
Functions
minmax(Data::[{X, Y}]) -> {MinX, MinY, MaxX, MaxY}
X = number()
Y = number()
MinX = number()
MinY = number()
MaxX = number()
MaxY = number()
Returns the min and max of a set of 2-dimensional numbers.
mean(List::[number()]) -> {Mean, StdDev, N}
Mean = float()
StdDev = float()
N = integer()
Calculates the mean and the standard deviation of a set of numbers.
activities2count2(Acts, StartTs) -> term()
activities2count(Acts::#activity{}, StartTs::timestamp()) -> Result
Result = [{Time, ProcessCount, PortCount}]
Time = float()
ProcessCount = integer()
PortCount = integer()
Calculate the resulting active processes and ports during the activity interval. Also checks active/inactive consistency. A task will always begin with an active state and end with an inactive state.
activities2count(Acts, StartTs, Type) -> term()
waiting_activities(Activities::[#activity{}]) -> FunctionList
FunctionList = [{Seconds, Mfa, {Mean, StdDev, N}}]
Seconds = float()
Mfa = mfa()
Mean = float()
StdDev = float()
N = integer()
Calculates the time, both average and total, that a process has spent in a receive state at specific function. However, if there are multiple receives in a function it cannot differentiate between them.
seconds2ts(Seconds::float(), StartTs::{integer(), integer(), integer()}) -> timestamp()
Calculates a timestamp given a duration in seconds and a starting timestamp.
minmax_activities(Activities::[#activity{}], Count::integer()) -> {integer(), integer()}
Calculates the minimum and maximum of runnable activites (processes and ports) during the interval of reffered by the activity list.