6#ifndef PHYSICS_PHYSICS_H
7#define PHYSICS_PHYSICS_H
48damped_os_serial(
double max_amplitude,
double length,
double mass,
double gravity,
double k,
double Ao,
double Vo,
50 double time_limit,
double step_size,
double damping_coefficent,
int number_of_files);
86damped_os_parallel_v1(
double max_amplitude,
double length,
double mass,
double gravity,
double k,
double Ao,
double Vo,
88 double time_limit,
double step_size,
double damping_coefficent,
int number_of_files);
124damped_os_parallel_v2(
double max_amplitude,
double length,
double mass,
double gravity,
double k,
double Ao,
double Vo,
126 double time_limit,
double step_size,
double damping_coefficent,
int number_of_files);
163elastic_pendulum(
double r,
double length,
double mass,
double gravity,
double k,
double Ao,
double Xo,
166 double time_limit,
double step_size,
double damping_coefficent,
int number_of_files);
202 double Vo,
double FI,
203 double time_limit,
double step_size,
double damping_coefficent,
204 int number_of_files);
241 double Vo,
double FI,
242 double time_limit,
double step_size,
double damping_coefficent,
243 int number_of_files);
282 double Vo,
double FI,
283 double time_limit,
double step_size,
double damping_coefficent,
284 int number_of_files,
int num_of_threads);
320 double Vo,
double FI,
321 double time_limit,
double step_size,
double damping_coefficent,
322 int number_of_files);
360 double time_limit,
double step_size,
double damping_coefficent,
int number_of_files);
392 long long precision);
423 long long precision);
459 double spaceX_step,
double spaceY_step,
460 long long precision);
493 double spaceX_step,
double spaceY_step,
494 long long precision);
556 double spaceX_step,
double spaceY_step,
557 long long precision);
589 long long precision);
619 long long precision);
651 double spaceX_step,
double spaceY_step,
652 long long precision);
682 double spaceX_step,
double spaceY_step,
683 long long precision);
743 double spaceX_step,
double spaceY_step,
744 long long precision);
char * heat_equation_2D_serial(double time_step, double time_limit, double spaceX_step, double spaceY_step, long long precision)
This is a function that simulates the heat transfer in 2D object, and write the result to a file.
double damped_os_parallel_execution_time_v3(double max_amplitude, double length, double mass, double gravity, double k, double Ao, double Vo, double FI, double time_limit, double step_size, double damping_coefficent, int number_of_files, int num_of_threads)
This function calculate execution time simulating simple harmonic motion (Simple Spring Motion).
char * damped_os_parallel_v2(double max_amplitude, double length, double mass, double gravity, double k, double Ao, double Vo, double FI, double time_limit, double step_size, double damping_coefficent, int number_of_files)
This function simulates simple harmonic motion (Simple Spring Motion).
double heat_equation_execution_time_1D_serial(double time_step, double time_limit, double space_step, long long precision)
This is a function that simulates the heat transfer in 1D object as wire, and return the execution ti...
void finalize()
finalize the MPI and de-allocate the resources.
char * elastic_pendulum(double r, double length, double mass, double gravity, double k, double Ao, double Xo, double Yo, double Vo, double time_limit, double step_size, double damping_coefficent, int number_of_files)
function simulates the motion of (elastic pendulum/2D-spring/spring pendulum) system.
char * damped_os_parallel_v1(double max_amplitude, double length, double mass, double gravity, double k, double Ao, double Vo, double FI, double time_limit, double step_size, double damping_coefficent, int number_of_files)
function simulates simple harmonic motion (Simple Spring Motion).
int heat_equation_1D_P1_OPENMP(double time_step, double time_limit, double space_step, long long precision)
This is a function that simulates the heat transfer in 1D object as wire, and writes the result to a ...
double heat_equation_execution_time_2D_serial(double time_step, double time_limit, double spaceX_step, double spaceY_step, long long precision)
This is a function that simulates the heat transfer in 2D object, and return the execution time witho...
double heat_equation_execution_time_1D_P1_MPI(double time_step, double time_limit, double space_step, long long precision)
This is a function that simulates the heat transfer in 1D object as wire, and return the execution ti...
int heat_equation_1D_P1_MPI(double time_step, double time_limit, double space_step, long long precision)
This is a function that simulates the heat transfer in 1D object as wire, and each core writes the re...
int heat_equation_2D_P1_MPI(double time_step, double time_limit, double spaceX_step, double spaceY_step, long long precision)
This is a function that simulates the heat transfer in 2D object, and each core writes the result to ...
double damped_os_parallel_execution_time_v1(double max_amplitude, double length, double mass, double gravity, double k, double Ao, double Vo, double FI, double time_limit, double step_size, double damping_coefficent, int number_of_files)
This function calculate the execution time of simulating simple harmonic motion (Simple Spring Motion...
char * elastic_pendulum_execution(double r, double length, double mass, double gravity, double k, double Ao, double Xo, double Yo, double Vo, double time_limit, double step_size, double damping_coefficent, int number_of_files)
This function calculates the execution time of simulating the motion of (elastic pendulum/2D-spring/s...
double heat_equation_execution_time_2D_P1_OPENMP(double time_step, double time_limit, double spaceX_step, double spaceY_step, long long precision)
This is a function that simulates the heat transfer in 2D object, and return the execution time witho...
int heat_equation_2D_P1_OPENMP(double time_step, double time_limit, double spaceX_step, double spaceY_step, long long precision)
This is a function that simulates the heat transfer in 2D object, and each core writes the result to ...
char * heat_equation_1D_serial(double time_step, double time_limit, double space_step, long long precision)
This is a function that simulates the heat transfer in 1D object as wire, and write the result to a f...
char * damped_os_serial(double max_amplitude, double length, double mass, double gravity, double k, double Ao, double Vo, double FI, double time_limit, double step_size, double damping_coefficent, int number_of_files)
function simulates simple harmonic motion (Simple Spring Motion).
char * damped_os_serial_execution(double max_amplitude, double length, double mass, double gravity, double k, double Ao, double Vo, double FI, double time_limit, double step_size, double damping_coefficent, int number_of_files)
This function calculates execution time of simulating simple harmonic motion (Simple Spring Motion).
double heat_equation_execution_time_2D_P1_MPI(double time_step, double time_limit, double spaceX_step, double spaceY_step, long long precision)
This is a function that simulates the heat transfer in 2D object, and return the execution time witho...
double damped_os_parallel_execution_time_v2(double max_amplitude, double length, double mass, double gravity, double k, double Ao, double Vo, double FI, double time_limit, double step_size, double damping_coefficent, int number_of_files)
This function calculate execution time simulating simple harmonic motion (Simple Spring Motion).
double heat_equation_execution_time_1D_P1_OPENMP(double time_step, double time_limit, double space_step, long long precision)
This is a function that simulates the heat transfer in 1D object as wire, and return the execution ti...