Least_Square.h 580 B

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