Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def print_arma_model(self):
- if not self.is_model_exists():
- print("Model ARMA({0},{1}) does not exist.".format(self.__m, self.__n))
- print("Error norm: {:.30f}".format(self.__norm))
- else:
- r = "\u0072"
- xi = "\u03BE"
- eta = "\u03B7"
- alpha = "\u03B1"
- beta = "\u03B2"
- epsilon = "\u03B5"
- subscript_n = "\u2099"
- subscript_minus = "\u208B"
- print("Auto Regressive Moving Average model ARMA({0},{1}):".format(self.__m, self.__n))
- print("{0}{1} = ".format(eta, subscript_n), end="")
- for i in range(self.__m):
- print("{0}{1}{2}{3} + ".
- format(beta,
- get_subscript_number(i + 1),
- eta,
- subscript_n + subscript_minus + get_subscript_number(i + 1)),
- end="")
- for i in range(self.__n + 1):
- index = get_subscript_number(i)
- print("{0}{1}{2}{3}".
- format(alpha,
- get_subscript_number(i),
- xi,
- subscript_n + (subscript_minus + index if i != 0 else "")), end="")
- if i != self.__n:
- print(" + ", end="")
- else:
- print()
- for i in range(self.__m):
- print("{0}{1} = {2:.4f}".format(beta,
- get_subscript_number(i + 1),
- self.__beta[i]))
- if not self.is_model_stable():
- print("Model ARMA({0},{1}) is not stable.".format(self.__m, self.__n))
- print("Error norm: {:.30f}".format(self.__norm))
- else:
- for i in range(self.__n + 1):
- print("{0}{1} = {2:.4f}".format(alpha,
- get_subscript_number(i),
- self.__alpha[i]))
- print("{0}{1} = {2:.6f}".format(epsilon,
- get_superscript_number(2),
- self.standard_deviation_criterion()))
- print("Error norm: {:.30f}".format(self.__norm))
- print("Stability criterion:")
- print("1", end="")
- for i in range(1, self.__m + 1):
- print(" - {0}{1}z{2}".format(beta,
- get_subscript_number(i),
- get_superscript_number(-i)), end="")
- print(" = 0")
- for i in range(len(self.__z)):
- print(type(self.__z[i]))
- if isinstance(self.__z[i], Float):
- print("z{0} = {1:.4f}".format(get_subscript_number(i + 1),
- self.__z[i]))
- else:
- print("z{0} = {1:.4f} {2} {3:.4f}*I".format(get_subscript_number(i + 1),
- re(self.__z[i]),
- "+" if sign(im(self.__z[i])) > 0 else "-",
- abs(im(self.__z[i]))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement