Skip to content
Snippets Groups Projects
opti.h 908 B
Newer Older
philippe.montando's avatar
philippe.montando committed
#ifndef _OPTI_H_
#define _OPTI_H_
#include <time.h>
philippe.montando's avatar
philippe.montando committed
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <stdbool.h>
philippe.montando's avatar
philippe.montando committed
typedef struct Point Point;

struct Point 
{
   double x, y;
};

Point* line(double a, double b);
philippe.montando's avatar
philippe.montando committed
double popow(double v, double w);
philippe.montando's avatar
philippe.montando committed
double double_random(double min, double max);
philippe.montando's avatar
philippe.montando committed
Point* cloud1(Point* a_line);
Point* cloud2(double a, double b);
philippe.montando's avatar
philippe.montando committed
Point* cloud3(double a, double b);
double* averages(Point* my_cloud, int cloud_size);
double* a_and_b(double* my_averages);
double* sums(Point* my_cloud, int cloud_size);
double gradient(double a, double b, Point* my_cloud, int cloud_size, bool is_a);
double gradient_descent(double a, double b, double my_gradient, bool is_a);
double* gradient_descent_v2(double a, double b, Point* my_cloud, double cost);
philippe.montando's avatar
philippe.montando committed
double cost(double a, double b, Point* my_cloud, int cloud_size);
philippe.montando's avatar
philippe.montando committed
#endif