#include <iostream.h> #include <stdlib.h> #include <time.h> #include <math.h> #include "properties.h" #include "linear_algebra.h" class timestep { public: timestep( const int & dimension) ~timestep(); timestep( const timestep & nexttime); timestep & operator = (const timestep& thistime ); int advance_time(DFP & time_max, DFP & tolerance ) void build_system(const properties& ref); void initialize_state(DFP & initialtime); private: DFP time; int dim; properties state; matrix Jacobian; vector temperatures, rhs; }; class properties { public: properties( const int & dimension); ~properties(); properties( const properties & newproperties ); properties & operator = (const properties & thisproperty); friend class timestep; private: vector density, heat_capacity, heat_conduct; vector grid_coordinates, mid_point, rod_section_length; vector harmonic_averaged_heat_conduct; }