From 4458ff2d126114cfb1f2193d5d889b9d198bde20 Mon Sep 17 00:00:00 2001 From: Cory Date: Tue, 12 Dec 2023 16:31:48 +0100 Subject: [PATCH] Create skeleton for the WaveSimulation class. This closes #4 --- include/WaveSimulation.hpp | 32 ++++++++++++++++++++++++++++++++ lib/WaveSimulation.cpp | 0 2 files changed, 32 insertions(+) create mode 100644 include/WaveSimulation.hpp create mode 100644 lib/WaveSimulation.cpp diff --git a/include/WaveSimulation.hpp b/include/WaveSimulation.hpp new file mode 100644 index 0000000..39e51b0 --- /dev/null +++ b/include/WaveSimulation.hpp @@ -0,0 +1,32 @@ +/** @file WaveSimulation.hpp + * + * @author Cory Alexander Balaton (coryab) + * @author Janita Ovidie Sandtrøen Willumsen (janitaws) + * + * @version 0.1 + * + * @brief The definition of the WaveSimulation class + * + * @bug No known bugs + * */ +#ifndef __WAVE_SIMULATION__ +#define __WAVE_SIMULATION__ + +#include + +class WaveSimulation { +protected: + int M; + arma::cx_mat U; + arma::cx_mat V; + arma::cx_mat A; + arma::cx_mat B; + double h; + double dt; +public: + virtual void solve() = 0; + void build_A(arma::cx_vec A_vec); + void build_B(arma::cx_vec B_vec); +}; + +#endif diff --git a/lib/WaveSimulation.cpp b/lib/WaveSimulation.cpp new file mode 100644 index 0000000..e69de29