MathUtilities.h
Dosyayı İndir
#ifndef MATHUTILITIES_H_INCLUDED
#define MATHUTILITIES_H_INCLUDED
#include <iostream>
#include <math.h>
#define PI 3.14159265
#define PRECISION 0.000001
using namespace std;
double sinus(double angle){
double result=sin(angle);
return fabs(result)>PRECISION?result:0;
}
double cosinus(double angle){
double result=cos(angle);
return fabs(result)>PRECISION?result:0;
}
double *vector_add(const double *left,const double *right,const int length) {
double *result=new double[length];
for(int i=0;i<length;i++){
result[i]=left[i]+right[i];
}
return result;
}
double *vector_substract(const double *left,const double *right,const int length) {
double *result=new double[length];
for(int i=0;i<length;i++){
result[i]=left[i]-right[i];
}
return result;
}
double *vector_negate(const double *data,const int length) {
double *result=new double[length];
for(int i=0;i<length;i++){
result[i]=-data[i];
}
return result;
}
double *vector_divide(const double *divident,double divisor,const int length){
double *result=new double[length];
for(int i=0;i<length;i++){
result[i]=divident[i]/divisor;
}
return result;
}
double *vector_copy(const double *data,const int length) {
double *result=new double[length];
for(int i=0;i<length;i++){
result[i]=data[i];
}
return result;
}
void vector_print(ostream &os,const double *data,const int length){
cout<<"|\t";
for(int i=0;i<length;i++){
cout<<data[i]<<"\t";
}
cout<<"|"<<endl;
}
#endif
Dosyayı İndir