#ifndef SRC_MATRICES_HH
#define SRC_MATRICES_HH

template <class Matrix> class Matrices {
public:
  std::vector<std::shared_ptr<Matrix>> elasticity;
  std::vector<std::shared_ptr<Matrix>> damping;
  std::vector<std::shared_ptr<Matrix>> mass;

  Matrices(size_t n) {
    elasticity.resize(n);
    damping.resize(n);
    mass.resize(n);

      for (size_t i=0; i<n; i++) {
        elasticity[i] = std::make_shared<Matrix>();
        damping[i] = std::make_shared<Matrix>();
        mass[i] = std::make_shared<Matrix>();
      }
  }
};
#endif