/[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 1859 by gross, Wed Oct 8 03:03:37 2008 UTC revision 2073 by phornby, Thu Nov 20 10:51:41 2008 UTC
# Line 41  typedef struct Paso_FCTransportProblem { Line 41  typedef struct Paso_FCTransportProblem {
41    
42  } Paso_FCTransportProblem;  } Paso_FCTransportProblem;
43    
44    
45    PASO_DLL_API
46  Paso_FCTransportProblem* Paso_FCTransportProblem_getReference(Paso_FCTransportProblem* in);  Paso_FCTransportProblem* Paso_FCTransportProblem_getReference(Paso_FCTransportProblem* in);
47    
48    PASO_DLL_API
49  Paso_FCTransportProblem* Paso_FCTransportProblem_alloc(double theta, Paso_SystemMatrixPattern *pattern, int block_size);  Paso_FCTransportProblem* Paso_FCTransportProblem_alloc(double theta, Paso_SystemMatrixPattern *pattern, int block_size);
50    
51    PASO_DLL_API
52  dim_t Paso_FCTransportProblem_getBlockSize(const Paso_FCTransportProblem* in);  dim_t Paso_FCTransportProblem_getBlockSize(const Paso_FCTransportProblem* in);
53    
54    PASO_DLL_API
55  double Paso_FCTransportProblem_getSafeTimeStepSize(Paso_FCTransportProblem* in);  double Paso_FCTransportProblem_getSafeTimeStepSize(Paso_FCTransportProblem* in);
56    
57    PASO_DLL_API
58  void Paso_FCTransportProblem_setLowOrderOperator(Paso_FCTransportProblem * fc);  void Paso_FCTransportProblem_setLowOrderOperator(Paso_FCTransportProblem * fc);
59    
60    PASO_DLL_API
61  Paso_SystemMatrix* Paso_FCTransportProblem_borrowTransportMatrix(Paso_FCTransportProblem* in);  Paso_SystemMatrix* Paso_FCTransportProblem_borrowTransportMatrix(Paso_FCTransportProblem* in);
62    
63    PASO_DLL_API
64  Paso_SystemMatrix* Paso_FCTransportProblem_borrowMassMatrix(Paso_FCTransportProblem* in);  Paso_SystemMatrix* Paso_FCTransportProblem_borrowMassMatrix(Paso_FCTransportProblem* in);
65    
66    PASO_DLL_API
67  double* Paso_FCTransportProblem_borrowLumpedMassMatrix(Paso_FCTransportProblem* in);  double* Paso_FCTransportProblem_borrowLumpedMassMatrix(Paso_FCTransportProblem* in);
68    
69    PASO_DLL_API
70  dim_t Paso_FCTransportProblem_getTotalNumRows(Paso_FCTransportProblem* in);  dim_t Paso_FCTransportProblem_getTotalNumRows(Paso_FCTransportProblem* in);
71    
72    PASO_DLL_API
73  void Paso_FCTransportProblem_free(Paso_FCTransportProblem* in);  void Paso_FCTransportProblem_free(Paso_FCTransportProblem* in);
74    
75    PASO_DLL_API
76  void Paso_FCTransportProblem_reset(Paso_FCTransportProblem* in);  void Paso_FCTransportProblem_reset(Paso_FCTransportProblem* in);
77    
78    PASO_DLL_API
79  void Paso_SolverFCT_solve(Paso_FCTransportProblem* fctp, double* u, double dt, double* source, Paso_Options* options);  void Paso_SolverFCT_solve(Paso_FCTransportProblem* fctp, double* u, double dt, double* source, Paso_Options* options);
80    
81    PASO_DLL_API
82  void Paso_FCTransportProblem_checkinSolution(Paso_FCTransportProblem* in, double* u);  void Paso_FCTransportProblem_checkinSolution(Paso_FCTransportProblem* in, double* u);
83    
84    PASO_DLL_API
85  void Paso_FCTransportProblem_applyPreAntiDiffusionCorrection(Paso_SystemMatrix *f,const Paso_Coupler* u_coupler);  void Paso_FCTransportProblem_applyPreAntiDiffusionCorrection(Paso_SystemMatrix *f,const Paso_Coupler* u_coupler);
86    
87    PASO_DLL_API
88  void Paso_SolverFCT_setQs(const Paso_Coupler* u_coupler,double* QN, double* QP, const Paso_SystemMatrix *L);  void Paso_SolverFCT_setQs(const Paso_Coupler* u_coupler,double* QN, double* QP, const Paso_SystemMatrix *L);
89    
90    PASO_DLL_API
91  void Paso_FCTransportProblem_setAntiDiffusionFlux(const double dt, const Paso_FCTransportProblem * fc, Paso_SystemMatrix *flux_matrix, const Paso_Coupler* u_coupler);  void Paso_FCTransportProblem_setAntiDiffusionFlux(const double dt, const Paso_FCTransportProblem * fc, Paso_SystemMatrix *flux_matrix, const Paso_Coupler* u_coupler);
92    
93    PASO_DLL_API
94  void Paso_FCTransportProblem_setRs(const Paso_SystemMatrix *f,const double* lumped_mass_matrix,const Paso_Coupler* QN,const Paso_Coupler* QP,double* RN,double* RP);  void Paso_FCTransportProblem_setRs(const Paso_SystemMatrix *f,const double* lumped_mass_matrix,const Paso_Coupler* QN,const Paso_Coupler* QP,double* RN,double* RP);
95    
96    PASO_DLL_API
97  void Paso_FCTransportProblem_addCorrectedFluxes(double* f,const Paso_SystemMatrix *flux_matrix,const Paso_Coupler* RN,const Paso_Coupler* RP);  void Paso_FCTransportProblem_addCorrectedFluxes(double* f,const Paso_SystemMatrix *flux_matrix,const Paso_Coupler* RN,const Paso_Coupler* RP);
98    
99    
100    PASO_DLL_API
101  void Paso_SolverFCT_setMuPaLuPbQ(double* out, const double* M, const Paso_Coupler* u_coupler, const double a, const Paso_SystemMatrix *L, const double b, const double* Q);  void Paso_SolverFCT_setMuPaLuPbQ(double* out, const double* M, const Paso_Coupler* u_coupler, const double a, const Paso_SystemMatrix *L, const double b, const double* Q);
102    
103    PASO_DLL_API
104  Paso_Connector* Paso_FCTransportProblem_borrowConnector(const Paso_FCTransportProblem* in);  Paso_Connector* Paso_FCTransportProblem_borrowConnector(const Paso_FCTransportProblem* in);
105    
106    PASO_DLL_API
107  void Paso_FCT_setUp(Paso_FCTransportProblem* fctp, const double dt, const double *sourceN, const double *sourceP, double* b, double* uTilde,  void Paso_FCT_setUp(Paso_FCTransportProblem* fctp, const double dt, const double *sourceN, const double *sourceP, double* b, double* uTilde,
108                       Paso_Coupler* uTilde_coupler, double *QN, Paso_Coupler* QN_coupler, double *QP, Paso_Coupler* QP_coupler,                       Paso_Coupler* uTilde_coupler, double *QN, Paso_Coupler* QN_coupler, double *QP, Paso_Coupler* QP_coupler,
109                       Paso_Options* options, Paso_Performance* pp);                       Paso_Options* options, Paso_Performance* pp);
110    
111    PASO_DLL_API
112  index_t Paso_FCTransportProblem_getTypeId(const index_t solver,const index_t preconditioner, const index_t package,const  bool_t symmetry);  index_t Paso_FCTransportProblem_getTypeId(const index_t solver,const index_t preconditioner, const index_t package,const  bool_t symmetry);
113    
114  #endif /* #ifndef INC_SOLVERFCT */  #endif /* #ifndef INC_SOLVERFCT */

Legend:
Removed from v.1859  
changed lines
  Added in v.2073

  ViewVC Help
Powered by ViewVC 1.1.26