www.pudn.com > simulator.zip > General_ext.h


#include  
#include  
#include  
#include  
 
#define MAX_CTRL_CHAN 8 
#define MAX_GMPOINTS  1500 
#define i_order       1 
 
typedef float motion; 
typedef float force; 
 
extern int Num_dof, 
           Gm_pts, 
 
           integration_method, 
           type_of_damping, 
           type_of_load, 
	       i_type; 
 
extern enum { no_damping, 
              matrix_damping, 
	          proportional_damping, 
	          Rayleigh_damping     }; 
 
extern float Current_time, 
             Dt, 
             Duration, 
             Gm_dt, 
	         Gm_fact, 
	         Acc_h[MAX_GMPOINTS], 
             Acc_v[MAX_GMPOINTS]; 
       
extern float Mass   [MAX_CTRL_CHAN][MAX_CTRL_CHAN], 
             Damping[MAX_CTRL_CHAN][MAX_CTRL_CHAN], 
             Stiff  [MAX_CTRL_CHAN][MAX_CTRL_CHAN], 
 
             alfa   [MAX_CTRL_CHAN][MAX_CTRL_CHAN], 
             gama   [MAX_CTRL_CHAN][MAX_CTRL_CHAN], 
	         Alfa, 
	         Beta, 
	         Gama, 
 
             damp_a1, 
             damp_a2; 
 
extern motion Displ  [MAX_CTRL_CHAN], 
              Displ_p[MAX_CTRL_CHAN], 
              Vel    [MAX_CTRL_CHAN], 
	          Vel_p  [MAX_CTRL_CHAN], 
	          Ace    [MAX_CTRL_CHAN], 
              Ace_p  [MAX_CTRL_CHAN]; 
 
extern force  App_force  [MAX_CTRL_CHAN], 
	          App_force_p[MAX_CTRL_CHAN]; 
 
extern float  inv_mat[MAX_CTRL_CHAN][MAX_CTRL_CHAN], 
              m_bar  [MAX_CTRL_CHAN]; 
 
extern void invert_matrix(float[][MAX_CTRL_CHAN], float[][MAX_CTRL_CHAN]); 
extern void mode_solution(float[]); 
extern void mpy_matrix_matrix(float[][MAX_CTRL_CHAN], float[][MAX_CTRL_CHAN], float[][MAX_CTRL_CHAN]); 
//extern void mpy_matrix_vector(float[][MAX_CTRL_CHAN], float[], float[]); 
extern void symsol(float[][MAX_CTRL_CHAN], float[], int); 
 
extern void vari_Stiff(void); 
 
class Time_Integration_scheme 
{     public : 
   	     virtual void previous(void)=0; 
   	     virtual void method(void)=0; 
};