/[escript]/trunk/paso/src/Transport.h
ViewVC logotype

Diff of /trunk/paso/src/Transport.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2987 by gross, Tue Mar 16 01:32:43 2010 UTC revision 3014 by gross, Wed Apr 28 04:05:21 2010 UTC
# Line 15  Line 15 
15  #ifndef INC_PASOTRANSPORT  #ifndef INC_PASOTRANSPORT
16  #define INC_PASOTRANSPORT  #define INC_PASOTRANSPORT
17    
18  #define DT_FACTOR_MAX 1000.  #define DT_FACTOR_MAX 100000.
19    
20  #include "SystemMatrix.h"  #include "SystemMatrix.h"
21  #include "Options.h"  #include "Options.h"
# Line 27  typedef struct Paso_TransportProblem { Line 27  typedef struct Paso_TransportProblem {
27      bool_t useBackwardEuler;      bool_t useBackwardEuler;
28    
29      bool_t valid_matrices;      bool_t valid_matrices;
30  /****************** REVISE ****************************/      double dt_max;       /* safe time step size */
31        double dt_failed;
32    
33        /****************** REVISE ****************************/
34      double dt_factor;        double dt_factor;  
35      double dt_max;  
36      double constraint_factor;        double constraint_factor;  
37      double* constraint_weights;      double* constraint_weights;
38  /*****************************************************/  /*****************************************************/
# Line 38  typedef struct Paso_TransportProblem { Line 41  typedef struct Paso_TransportProblem {
41      Paso_SystemMatrix * mass_matrix;      Paso_SystemMatrix * mass_matrix;
42            
43      Paso_Coupler* u_coupler;      Paso_Coupler* u_coupler;
   
     index_t *main_iptr;  
44      Paso_SystemMatrix * iteration_matrix;      Paso_SystemMatrix * iteration_matrix;
45      double* main_diagonal_low_order_transport_matrix;      double* main_diagonal_low_order_transport_matrix;
46      double* lumped_mass_matrix;      double* lumped_mass_matrix;
47        double* reactive_matrix;
48        double* main_diagonal_mass_matrix;
49    
50      Paso_MPIInfo *mpi_info;      Paso_MPIInfo *mpi_info;
51      dim_t reference_counter;      dim_t reference_counter;
# Line 63  dim_t Paso_TransportProblem_getBlockSize Line 66  dim_t Paso_TransportProblem_getBlockSize
66  PASO_DLL_API  PASO_DLL_API
67  double Paso_TransportProblem_getSafeTimeStepSize(Paso_TransportProblem* in);  double Paso_TransportProblem_getSafeTimeStepSize(Paso_TransportProblem* in);
68    
   
   
69  PASO_DLL_API  PASO_DLL_API
70  Paso_SystemMatrix* Paso_TransportProblem_borrowTransportMatrix(Paso_TransportProblem* in);  Paso_SystemMatrix* Paso_TransportProblem_borrowTransportMatrix(Paso_TransportProblem* in);
71    
# Line 99  void Paso_TransportProblem_insertConstra Line 100  void Paso_TransportProblem_insertConstra
100  PASO_DLL_API  PASO_DLL_API
101  void Paso_TransportProblem_setUpConstraint(Paso_TransportProblem* fctp,  const double* q, const double factor);  void Paso_TransportProblem_setUpConstraint(Paso_TransportProblem* fctp,  const double* q, const double factor);
102    
103    #define Paso_TransportProblem_borrowMainDiagonalPointer(_fct_) Paso_SparseMatrix_borrowMainDiagonalPointer((_fct_)->mass_matrix->mainBlock)
104    #define Paso_Transport_getTheta(_fct_) ( ( (_fct_)->useBackwardEuler ) ? 1. : 0.5 )
105    
106  #endif /* #ifndef INC_PASOTRANSPORT */  #endif /* #ifndef INC_PASOTRANSPORT */

Legend:
Removed from v.2987  
changed lines
  Added in v.3014

  ViewVC Help
Powered by ViewVC 1.1.26