00001 #ifndef ELEMSWITCHT_H
00002 #define ELEMSWITCHT_H
00003
00004 #include "aliast.h"
00005 #include "galias.h"
00006 #include "matrix.h"
00007
00008 void conductmat (long eid,long lcid,matrix &km);
00009 void capacmat (long eid,long lcid,matrix &cm);
00010
00011 void intpointvalues (long eid);
00012 void intpointvalues_puc (long eid);
00013 void intpointgradients (long eid);
00014 void intpointfluxes (long eid);
00015 void averageflux (long lcid,long eid,vector &fl);
00016 void intpointothers (long eid);
00017 void intpointeqothers (long eid);
00018
00019 void source_vector (long lcid,long eid,vector &nodval,vector &lv);
00020
00021 void compute_ipfluxes ();
00022 void compute_average_fluxes (long lcid, vector &fl);
00023 void compute_ipgrads ();
00024 void compute_ipotherst ();
00025 void compute_ipeqotherst ();
00026
00027 void compute_nodegrads ();
00028 void compute_nodefluxes ();
00029 void compute_nodeotherst ();
00030 void compute_nodeotherst_comp ();
00031 void compute_nodeeqotherst ();
00032 void compute_nodeeqotherst_comp ();
00033
00034 void internal_fluxes (double *intflux,long n);
00035
00036 void elem_neumann_vector (vector &lv,long lcid,long eid,long i);
00037 void elem_newton_vector (vector &lv,long lcid,long eid,long i);
00038 void elem_transmission_flux (vector &lv,long lcid,long eid,long i);
00039 void volume_rhs_vector (vector &lv,long lcid,long eid);
00040 void lmat (long eid,long lcid,matrix &lm);
00041 void ltmat (long eid,long lcid,matrix &lm);
00042 void averdmat (long eid,double &elemarea,matrix &km);
00043 void avercmat (long eid,double &elemarea,matrix &cm);
00044
00045 void higher_to_lower_level_elem (long eid,long *counter,double *buff);
00046 void intpointvalt (double *gv, nontransquant ntq, double scale);
00047 void elem_intpointvalt (long eid,vector &nodval,vector &ipval);
00048 void give_transq_nodval (double *gv,long mnt,nonmechquant nmq);
00049 void elem_transq_nodval (long eid, vector &nodval, nonmechquant nmq);
00050 void elem_transq_nodval_comp (long eid, vector &nodval, long ncne, long nq, nonmechquant *qt);
00051
00052
00053
00054 double elem_total_integral (long eid,vector &nodval);
00055
00056
00057 double elem_total_integral_ip (long eid,long varid);
00058
00059 #endif