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

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

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

revision 1361 by gross, Fri Dec 14 09:26:51 2007 UTC revision 1362 by gross, Mon Dec 17 02:28:16 2007 UTC
# Line 16  Line 16 
16    
17  #include "SystemMatrix.h"  #include "SystemMatrix.h"
18    
19  struct Paso_Solver_FluxControl {  typedef struct Paso_FCTransportProblem {
20      Paso_SystemMatrix * matrix;  
21        Paso_SystemMatrix * transport_matrix;
22        Paso_SystemMatrix * flux_matrix;
23        double* lumped_mass_matrix;
24        double theta;
25    
26      dim_t num_colors;      dim_t num_colors;
27      index_t *colorOf;      index_t *colorOf;
28      index_t *main_iptr;      index_t *main_iptr;
29  };      
30  typedef struct Paso_Solver_FluxControl Paso_Solver_FluxControl;      Paso_MPIInfo *mpi_info;
31        dim_t reference_counter;
32    
33  void Paso_Solver_FluxControl_free(Paso_Solver_FluxControl* in);  } Paso_FCTransportProblem;
34  Paso_Solver_FluxControl* Paso_SolverFCT_getFluxControl(Paso_SystemMatrix * A);  
35  void Paso_Solver_FluxControl_setAntiDiffusiveFlux(Paso_Solver_FluxControl * fc, double * u, double* fa);  void Paso_FCTransportProblem_free(Paso_FCTransportProblem* in);
36  void Paso_Solver_FluxControl_addDiffusion(Paso_Solver_FluxControl * fc, double alpha, Paso_SystemMatrix * B);  Paso_FCTransportProblem* Paso_FCTransportProblem_getReference(Paso_FCTransportProblem* in);
37    Paso_SystemMatrix* Paso_FCTransportProblem_borrowTransportMatrix(Paso_FCTransportProblem* in);
38    Paso_SystemMatrix* Paso_FCTransportProblem_borrowFluxMatrix(Paso_FCTransportProblem* in);
39    double* Paso_FCTransportProblem_borrowLumpedMassMatrix(Paso_FCTransportProblem* in);
40    dim_t Paso_FCTransportProblem_getTotalNumRows(Paso_FCTransportProblem* in);
41    Paso_FCTransportProblem* Paso_FCTransportProblem_alloc(double theta, Paso_SystemMatrixPattern *pattern, int block_size);
42    void Paso_FCTransportProblem_setAntiDiffusiveFlux(Paso_FCTransportProblem * fc, double * u, double* fa);
43    void Paso_FCTransportProblem_addDiffusion(Paso_FCTransportProblem * fc, double alpha, Paso_SystemMatrix * B);
44    
45    
46  #endif /* #ifndef INC_SOLVERFCT */  #endif /* #ifndef INC_SOLVERFCT */

Legend:
Removed from v.1361  
changed lines
  Added in v.1362

  ViewVC Help
Powered by ViewVC 1.1.26