summaryrefslogtreecommitdiffstats
path: root/Project/TransferFunction.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Project/TransferFunction.cpp')
-rw-r--r--Project/TransferFunction.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/Project/TransferFunction.cpp b/Project/TransferFunction.cpp
index 8e7b68f..b78d74a 100644
--- a/Project/TransferFunction.cpp
+++ b/Project/TransferFunction.cpp
@@ -291,10 +291,11 @@ void TransferFunction::CalculateSpaceState(int maxIteration, double error)
}
for(int i = 0; i < order - 1; i++) {
ss.A[order - 2][i] = -(denominator[order - 1 - i] / denominator[0]);
- ss.C[i] = (numerator[order - 1 - i] - denominator[order - 1 - i] * numerator[0]) / denominator[0];
+ ss.C[i] = numerator[order - 1 - i] / denominator[0] -
+ (denominator[order - 1 - i] / denominator[0]) * (numerator[0] / denominator[0]);
}
ss.B[order - 2] = 1.0;
- ss.D = numerator[0];
+ ss.D = numerator[0] / denominator[0];
m_ss = ss;