Files
263-0007-00L-Advanced-Syste…/forces.hpp
T
Nguyen Quy Anh cde82faa4d hell yea
2026-03-27 17:16:23 +01:00

51 lines
1.2 KiB
C++

#pragma once
#include "board.hpp"
#include "pedestrian.hpp"
#include <cmath>
// $\tau_{\alpha}$
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double tau_alpha = 0.5;
// $V^0_{\alpha \beta}$
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double V0_AB = 2.1;
// $\sigma$
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double SIGMA = 0.3;
// $U^0_{\alpha B}$
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double U0_AB = 10.0;
// $R$
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double R = 0.2;
// $c$
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double c = 0.5;
// $\varphi$
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double phi = 100.0;
const double cos_phi = cos(phi);
// $\varDelta_{t}$
// step size = 0.2 seconds
// https://arxiv.org/pdf/cond-mat/9805244, page 8
const double delta_t = 2;
// # Optional (forces.cpp: compute_repulsive_effects_from_pedestrians)
// const double DISTANCE = 2.0;
double w(Vector2d e, Vector2d f);
void compute_acceleration_term(Pedestrian *p);
void compute_repulsive_effects_from_pedestrians(Pedestrian *P, Pedestrian *p, int N);
void compute_repulsive_effects_from_borders(Board &B, Pedestrian *p);