FP calculation logic correction in Med5minRepository for improved accuracy
This commit is contained in:
parent
a9c140e953
commit
17bbf8d0e6
@ -245,15 +245,22 @@ class Med5minRepository extends AbstractRepository implements Med5minContractInt
|
||||
$field =
|
||||
[
|
||||
DB::raw("
|
||||
(
|
||||
SUM(med_5min.ativa_consumo)
|
||||
/
|
||||
CASE WHEN SQRT(SUM(med_5min.reativa_consumo+med_5min.reativa_geracao)^2) <> 0
|
||||
THEN SQRT(SUM(med_5min.reativa_consumo+med_5min.reativa_geracao)^2)
|
||||
ELSE NULL
|
||||
END
|
||||
) as FP"),
|
||||
DB::raw("0.92 as F_ref")
|
||||
CASE
|
||||
WHEN (SUM(med_5min.ativa_consumo - med_5min.ativa_geracao) = 0 AND SUM(med_5min.reativa_consumo - med_5min.reativa_geracao) = 0) THEN NULL
|
||||
WHEN SUM(med_5min.reativa_consumo - med_5min.reativa_geracao) > 0 THEN
|
||||
ABS(SUM(med_5min.ativa_consumo - med_5min.ativa_geracao)) /
|
||||
SQRT(POWER(SUM(med_5min.ativa_consumo - med_5min.ativa_geracao), 2) + POWER(SUM(med_5min.reativa_consumo - med_5min.reativa_geracao), 2))
|
||||
ELSE NULL
|
||||
END as fp_indutivo"),
|
||||
DB::raw("
|
||||
CASE
|
||||
WHEN (SUM(med_5min.ativa_consumo - med_5min.ativa_geracao) = 0 AND SUM(med_5min.reativa_consumo - med_5min.reativa_geracao) = 0) THEN NULL
|
||||
WHEN SUM(med_5min.reativa_consumo - med_5min.reativa_geracao) < 0 THEN
|
||||
ABS(SUM(med_5min.ativa_consumo - med_5min.ativa_geracao)) /
|
||||
SQRT(POWER(SUM(med_5min.ativa_consumo - med_5min.ativa_geracao), 2) + POWER(SUM(med_5min.reativa_consumo - med_5min.reativa_geracao), 2))
|
||||
ELSE NULL
|
||||
END as fp_capacitivo"),
|
||||
DB::raw("0.92 as f_ref")
|
||||
];
|
||||
|
||||
return $collection->merge($field);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user