Skip to content
Snippets Groups Projects
Commit f196af66 authored by Laura Christine Kühle's avatar Laura Christine Kühle
Browse files

Renamed quadrature evaluation points to nodes.

parent be2f2fa7
No related branches found
No related tags found
No related merge requests found
......@@ -15,8 +15,8 @@ TODO: Ask whether all quadratures depend on freely chosen num_nodes
Urgent:
TODO: Replace getter with property attributes for quadrature -> Done
TODO: Rename eval_points in Quadrature to nodes
TODO: Make num_nodes quadrature argument
TODO: Rename eval_points in Quadrature to nodes -> Done
TODO: Improve docstring for quadrature
TODO: Remove use of DGScheme from ANN_Data_Generator
TODO: Find error in centering for ANN training
TODO: Adapt TCD from Soraya
......@@ -359,11 +359,11 @@ def do_initial_projection(initial_condition, mesh, basis, quadrature,
for degree in range(basis.polynomial_degree + 1):
new_row.append(np.float64(sum(initial_condition.calculate(
mesh, eval_point + mesh.cell_len/2
* quadrature.eval_points[point] - adjustment)
* quadrature.nodes[point] - adjustment)
* basis.basis[degree].subs(
x, quadrature.eval_points[point])
x, quadrature.nodes[point])
* quadrature.weights[point]
for point in range(quadrature.num_points))))
for point in range(quadrature.num_nodes))))
new_row = np.array(new_row)
output_matrix.append(basis.inverse_mass_matrix @ new_row)
......
......@@ -421,7 +421,7 @@ def plot_results(projection: ndarray, troubled_cell_history: list,
grid, exact = calculate_exact_solution(
mesh, wave_speed, final_time, quadrature, init_cond)
approx = calculate_approximate_solution(
projection[:, 1:-1], quadrature.eval_points,
projection[:, 1:-1], quadrature.nodes,
basis.polynomial_degree, basis.basis)
# Plot multiwavelet solution (fine and coarse grid)
......@@ -434,7 +434,7 @@ def plot_results(projection: ndarray, troubled_cell_history: list,
coarse_grid, coarse_exact = calculate_exact_solution(
coarse_mesh, wave_speed, final_time, quadrature, init_cond)
coarse_approx = calculate_approximate_solution(
coarse_projection, quadrature.eval_points,
coarse_projection, quadrature.nodes,
basis.polynomial_degree, basis.basis)
plot_solution_and_approx(
coarse_grid, coarse_exact, coarse_approx, colors['coarse_exact'],
......
......@@ -18,10 +18,10 @@ class Quadrature(ABC):
----------
name : str
String of class name.
num_eval_points : int
Number of evaluation points per cell used for approximation.
eval_points : ndarray
Evaluation points per cell used for approximation.
num_nodes : int
Number of nodes (evaluation points) per cell used for approximation.
nodes : ndarray
Nodes (evaluation points) per cell used for approximation.
weights : ndarray
Weights used for approximation calculation.
......@@ -46,8 +46,8 @@ class Quadrature(ABC):
Additional parameters for quadrature.
"""
self._num_eval_points = None
self._eval_points = None
self._num_nodes = None
self._nodes = None
self._weights = None
@property
......@@ -56,14 +56,14 @@ class Quadrature(ABC):
return self.__class__.__name__
@property
def num_points(self) -> int:
"""Returns number of evaluation points."""
return self._num_eval_points
def num_nodes(self) -> str:
"""Returns number of nodes (evaluation points)."""
return self._num_nodes
@property
def eval_points(self) -> ndarray:
"""Returns evaluation points."""
return self._eval_points
def nodes(self) -> ndarray:
"""Returns nodes (evaluation points)."""
return self._nodes
@property
def weights(self) -> ndarray:
......@@ -78,10 +78,10 @@ class Gauss(Quadrature):
----------
name : str
String of class name.
num_eval_points : int
Number of evaluation points per cell used for approximation.
eval_points : ndarray
Evaluation points per cell used for approximation.
num_nodes : int
Number of nodes (evaluation points) per cell used for approximation.
nodes : ndarray
Nodes (evaluation points) per cell used for approximation.
weights : ndarray
Weights used for approximation calculation.
......@@ -98,11 +98,11 @@ class Gauss(Quadrature):
super()._reset(config)
# Unpack necessary configurations
self._num_eval_points = config.pop('num_eval_points', 6)
self._num_nodes = config.pop('num_eval_points', 6)
self._eval_points, self._weights = leg.leggauss(self._num_eval_points)
self._nodes, self._weights = leg.leggauss(self._num_nodes)
@property
def name(self):
"""Returns string of class name."""
return self.__class__.__name__ + str(self._num_eval_points)
return self.__class__.__name__ + str(self._num_nodes)
......@@ -170,7 +170,7 @@ def calculate_exact_solution(
for cell_center in mesh.non_ghost_cells:
eval_points = cell_center+mesh.cell_len / 2 * \
quadrature.eval_points
quadrature.nodes
eval_values = []
for eval_point in eval_points:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment