Least_Square.h 491 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. typedef struct {
  3. double Ka;
  4. double Cb;
  5. }linear_ceoff_t;
  6. typedef struct {
  7. int max_samples;
  8. int num_samples;
  9. double last_x;
  10. double last_y;
  11. double mul_xx;
  12. double mul_xy;
  13. double sum_x;
  14. double sum_y;
  15. linear_ceoff_t coeff;
  16. int finished;
  17. }least_square_t;
  18. void least_square_init(least_square_t *ls, int samples);
  19. int least_square_put(least_square_t *ls, double x, double y);
  20. double get_y_by_x(least_square_t *ls, double x);
  21. int get_x_by_y(least_square_t *ls, double y);