function [rho_point,u_point,v_point,p_point] = ExactSolution(x_point,y_point,t)

Globals2D;

x_a = -9; y_a = 0; x_e = 9; y_e = 0;

eta = sqrt((x_point - x_a - u_0 * t) ^ 2 + (y_point - y_a) .^ 2);
func = @(xi) exp(-(xi .^ 2) / (4 * kappa_1)) .* cos(xi * t) .* besselj(0, eta * xi) .* xi;
int_1 = quadgk(func, 0, Inf);
rho_point = (eps_1 / (2 * kappa_1)) * int_1 + eps_2 * exp(-kappa_2 * ((x_point - x_e - u_0 * t) ^ 2 + (y_point - y_e) ^ 2));
func = @(xi) exp(-(xi .^ 2) / (4 * kappa_1)) .* sin(xi * t) .* besselj(1, eta * xi) .* xi;
int_2 = quadgk(func, 0, Inf);
u_point = ((eps_1 * (x_point - x_a - u_0 * t)) / (2 * kappa_1 * eta)) * int_2 + eps_3 * ((y_point - y_a) * exp(-kappa_3 * ((x_point - x_a - u_0 * t) ^ 2 + (y_point - y_a) ^ 2)));
v_point = ((eps_1 * (y_point - y_a)) / (2 * kappa_1 * eta)) * int_2 - eps_3 * ((x_point - x_a - u_0 * t) * exp(-kappa_3 * ((x_point - x_a - u_0 * t) ^ 2 + (y_point - y_a) ^ 2)));
p_point = (eps_1 / (2 * kappa_1)) * int_1;

end