Get rid of global variables
Remove all global variables like static member functions.
In a first step, a library could be created which defines all needed variables (turn solver_impl.h into a cc
and make a library out of it which would be linked to each executable needing it).
This depends on #17 (closed)
Example due to solver.h:
bool SolverKernel::apply_external_force_;
bool SolverKernel::apply_boundary_conditions_;
bool SolverKernel::isentropic_;
userinput SolverKernel::INPUT_;
box SolverKernel::local_domain_;
box SolverKernel::domain_bound_;
QCMesh SolverKernel::local_mesh_;
vector<SamplingAtom> SolverKernel::local_nodal_sampling_atoms_;
vector<SamplingAtom> SolverKernel::local_cb_sampling_atoms_;
repatomContainer SolverKernel::localRepatomContainer_;
vector<BoundaryCondition *> SolverKernel::boundary_conditions_;
externalForceApplicator *SolverKernel::external_force_applicator_;
vector<material<DIM> *> SolverKernel::materials_;
VTKWriter SolverKernel::repatom_writer_;
vector<size_t> SolverKernel::triggered_nodal_sampling_atoms_;
vector<size_t> SolverKernel::triggered_cb_sampling_atoms_;
vector<size_t> SolverKernel::triggered_meshExchange_sampling_atoms_;
vector<size_t> SolverKernel::triggered_periodicMeshExchange_sampling_atoms_;
Edited by brgerhar