xref: /petsc/src/ts/tests/ex11.c (revision 4e8208cbcbc709572b8abe32f33c78b69c819375)
1c4762a1bSJed Brown static char help[] = "Demonstrates previous memory leak for XXXRegister()\n\n";
2c4762a1bSJed Brown 
3c4762a1bSJed Brown #include <petscts.h>
4c4762a1bSJed Brown #include <petsccharacteristic.h>
5c4762a1bSJed Brown #include <petscdraw.h>
6c4762a1bSJed Brown #include <petscdm.h>
7c4762a1bSJed Brown #include <petscpf.h>
8c4762a1bSJed Brown #include <petscsf.h>
9c4762a1bSJed Brown #include <petscao.h>
10c4762a1bSJed Brown 
TSGLLEAdaptCreate_Dummy(TSGLLEAdapt ts)11d71ae5a4SJacob Faibussowitsch static PetscErrorCode TSGLLEAdaptCreate_Dummy(TSGLLEAdapt ts)
12d71ae5a4SJacob Faibussowitsch {
137510d9b0SBarry Smith   PetscFunctionBeginUser;
143ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
15c4762a1bSJed Brown }
16c4762a1bSJed Brown 
TSGLLECreate_Dummy(TS ts)17d71ae5a4SJacob Faibussowitsch static PetscErrorCode TSGLLECreate_Dummy(TS ts)
18d71ae5a4SJacob Faibussowitsch {
197510d9b0SBarry Smith   PetscFunctionBeginUser;
203ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
21c4762a1bSJed Brown }
22c4762a1bSJed Brown 
TSAdaptCreate_Dummy(TSAdapt ts)23d71ae5a4SJacob Faibussowitsch static PetscErrorCode TSAdaptCreate_Dummy(TSAdapt ts)
24d71ae5a4SJacob Faibussowitsch {
257510d9b0SBarry Smith   PetscFunctionBeginUser;
263ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
27c4762a1bSJed Brown }
28c4762a1bSJed Brown 
TSCreate_Dummy(TS ts)29d71ae5a4SJacob Faibussowitsch static PetscErrorCode TSCreate_Dummy(TS ts)
30d71ae5a4SJacob Faibussowitsch {
317510d9b0SBarry Smith   PetscFunctionBeginUser;
323ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
33c4762a1bSJed Brown }
34c4762a1bSJed Brown 
35c4762a1bSJed Brown #if !defined(PETSC_USE_COMPLEX)
CharacteristicCreate_Dummy(Characteristic chr)36d71ae5a4SJacob Faibussowitsch static PetscErrorCode CharacteristicCreate_Dummy(Characteristic chr)
37d71ae5a4SJacob Faibussowitsch {
387510d9b0SBarry Smith   PetscFunctionBeginUser;
393ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
40c4762a1bSJed Brown }
41c4762a1bSJed Brown #endif
42c4762a1bSJed Brown 
SNESLineSearchCreate_Dummy(SNESLineSearch sneslinesearch)43d71ae5a4SJacob Faibussowitsch static PetscErrorCode SNESLineSearchCreate_Dummy(SNESLineSearch sneslinesearch)
44d71ae5a4SJacob Faibussowitsch {
457510d9b0SBarry Smith   PetscFunctionBeginUser;
463ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
47c4762a1bSJed Brown }
48c4762a1bSJed Brown 
SNESCreate_Dummy(SNES snes)49d71ae5a4SJacob Faibussowitsch static PetscErrorCode SNESCreate_Dummy(SNES snes)
50d71ae5a4SJacob Faibussowitsch {
517510d9b0SBarry Smith   PetscFunctionBeginUser;
523ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
53c4762a1bSJed Brown }
54c4762a1bSJed Brown 
KSPCreate_Dummy(KSP ksp)55d71ae5a4SJacob Faibussowitsch static PetscErrorCode KSPCreate_Dummy(KSP ksp)
56d71ae5a4SJacob Faibussowitsch {
577510d9b0SBarry Smith   PetscFunctionBeginUser;
583ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
59c4762a1bSJed Brown }
60c4762a1bSJed Brown 
KSPGuessCreate_Dummy(KSPGuess ksp)61d71ae5a4SJacob Faibussowitsch static PetscErrorCode KSPGuessCreate_Dummy(KSPGuess ksp)
62d71ae5a4SJacob Faibussowitsch {
637510d9b0SBarry Smith   PetscFunctionBeginUser;
643ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
65c4762a1bSJed Brown }
66c4762a1bSJed Brown 
PCCreate_Dummy(PC pc)67d71ae5a4SJacob Faibussowitsch static PetscErrorCode PCCreate_Dummy(PC pc)
68d71ae5a4SJacob Faibussowitsch {
697510d9b0SBarry Smith   PetscFunctionBeginUser;
703ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
71c4762a1bSJed Brown }
72c4762a1bSJed Brown 
DMCreate_Dummy(DM dm)73d71ae5a4SJacob Faibussowitsch static PetscErrorCode DMCreate_Dummy(DM dm)
74d71ae5a4SJacob Faibussowitsch {
757510d9b0SBarry Smith   PetscFunctionBeginUser;
763ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
77c4762a1bSJed Brown }
78c4762a1bSJed Brown 
MatPartitioningCreate_Dummy(MatPartitioning mat)79d71ae5a4SJacob Faibussowitsch static PetscErrorCode MatPartitioningCreate_Dummy(MatPartitioning mat)
80d71ae5a4SJacob Faibussowitsch {
817510d9b0SBarry Smith   PetscFunctionBeginUser;
823ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
83c4762a1bSJed Brown }
84c4762a1bSJed Brown 
MatCreate_Dummy(Mat mat)85d71ae5a4SJacob Faibussowitsch static PetscErrorCode MatCreate_Dummy(Mat mat)
86d71ae5a4SJacob Faibussowitsch {
877510d9b0SBarry Smith   PetscFunctionBeginUser;
883ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
89c4762a1bSJed Brown }
90c4762a1bSJed Brown 
PFCreate_Dummy(PF pf,PetscCtx ctx)91*2a8381b2SBarry Smith static PetscErrorCode PFCreate_Dummy(PF pf, PetscCtx ctx)
92d71ae5a4SJacob Faibussowitsch {
937510d9b0SBarry Smith   PetscFunctionBeginUser;
943ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
95c4762a1bSJed Brown }
96c4762a1bSJed Brown 
VecCreate_Dummy(Vec vec)97d71ae5a4SJacob Faibussowitsch static PetscErrorCode VecCreate_Dummy(Vec vec)
98d71ae5a4SJacob Faibussowitsch {
997510d9b0SBarry Smith   PetscFunctionBeginUser;
1003ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
101c4762a1bSJed Brown }
102c4762a1bSJed Brown 
VecScatterCreate_Dummy(VecScatter vec)103d71ae5a4SJacob Faibussowitsch static PetscErrorCode VecScatterCreate_Dummy(VecScatter vec)
104d71ae5a4SJacob Faibussowitsch {
1057510d9b0SBarry Smith   PetscFunctionBeginUser;
1063ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
107c4762a1bSJed Brown }
108c4762a1bSJed Brown 
PetscSFCreate_Dummy(PetscSF sf)109d71ae5a4SJacob Faibussowitsch static PetscErrorCode PetscSFCreate_Dummy(PetscSF sf)
110d71ae5a4SJacob Faibussowitsch {
1117510d9b0SBarry Smith   PetscFunctionBeginUser;
1123ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
113c4762a1bSJed Brown }
114c4762a1bSJed Brown 
ISLocalToGlobalMappingCreate_Dummy(ISLocalToGlobalMapping is)115d71ae5a4SJacob Faibussowitsch static PetscErrorCode ISLocalToGlobalMappingCreate_Dummy(ISLocalToGlobalMapping is)
116d71ae5a4SJacob Faibussowitsch {
1177510d9b0SBarry Smith   PetscFunctionBeginUser;
1183ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
119c4762a1bSJed Brown }
120c4762a1bSJed Brown 
ISCreate_Dummy(IS is)121d71ae5a4SJacob Faibussowitsch static PetscErrorCode ISCreate_Dummy(IS is)
122d71ae5a4SJacob Faibussowitsch {
1237510d9b0SBarry Smith   PetscFunctionBeginUser;
1243ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
125c4762a1bSJed Brown }
126c4762a1bSJed Brown 
AOCreate_Dummy(AO ao)127d71ae5a4SJacob Faibussowitsch static PetscErrorCode AOCreate_Dummy(AO ao)
128d71ae5a4SJacob Faibussowitsch {
1297510d9b0SBarry Smith   PetscFunctionBeginUser;
1303ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
131c4762a1bSJed Brown }
132c4762a1bSJed Brown 
PetscDrawCreate_Dummy(PetscDraw draw)133d71ae5a4SJacob Faibussowitsch static PetscErrorCode PetscDrawCreate_Dummy(PetscDraw draw)
134d71ae5a4SJacob Faibussowitsch {
1357510d9b0SBarry Smith   PetscFunctionBeginUser;
1363ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
137c4762a1bSJed Brown }
138c4762a1bSJed Brown 
PetscViewerCreate_Dummy(PetscViewer viewer)139d71ae5a4SJacob Faibussowitsch static PetscErrorCode PetscViewerCreate_Dummy(PetscViewer viewer)
140d71ae5a4SJacob Faibussowitsch {
1417510d9b0SBarry Smith   PetscFunctionBeginUser;
1423ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
143c4762a1bSJed Brown }
144c4762a1bSJed Brown 
PetscRandomCreate_Dummy(PetscRandom arand)145d71ae5a4SJacob Faibussowitsch static PetscErrorCode PetscRandomCreate_Dummy(PetscRandom arand)
146d71ae5a4SJacob Faibussowitsch {
1477510d9b0SBarry Smith   PetscFunctionBeginUser;
1483ba16761SJacob Faibussowitsch   PetscFunctionReturn(PETSC_SUCCESS);
149c4762a1bSJed Brown }
150c4762a1bSJed Brown 
main(int argc,char ** argv)151d71ae5a4SJacob Faibussowitsch int main(int argc, char **argv)
152d71ae5a4SJacob Faibussowitsch {
153a748edf9SJed Brown   PetscReal A[1] = {0.0}, Gamma[1] = {1.0}, b[1] = {1.0}, c[1] = {1.0}, d[1] = {1.0};
154c4762a1bSJed Brown 
155327415f7SBarry Smith   PetscFunctionBeginUser;
156c8025a54SPierre Jolivet   PetscCall(PetscInitialize(&argc, &argv, NULL, help));
157c4762a1bSJed Brown   /* TaoLineSearchRegister() also has the same memory leak */
158c4762a1bSJed Brown   /* TaoRegister() also has the same memory leak */
1599566063dSJacob Faibussowitsch   PetscCall(TSGLLEAdaptRegister("dummy", TSGLLEAdaptCreate_Dummy));
1609566063dSJacob Faibussowitsch   PetscCall(TSGLLERegister("dummy", TSGLLECreate_Dummy));
1619566063dSJacob Faibussowitsch   PetscCall(TSRKRegister("dummy", 0, 0, A, 0, 0, 0, 0, 0));
1629566063dSJacob Faibussowitsch   PetscCall(TSGLEERegister("dummy", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0));
163a748edf9SJed Brown   PetscCall(TSARKIMEXRegister("dummy", 0, 1, A, b, c, A, b, c, 0, 0, 0, 0, 0));
1649566063dSJacob Faibussowitsch   PetscCall(TSRosWRegister("dummy", 0, 1, A, Gamma, b, 0, 0, 0));
1659566063dSJacob Faibussowitsch   PetscCall(TSBasicSymplecticRegister("dummy", 0, 0, c, d));
1669566063dSJacob Faibussowitsch   PetscCall(TSAdaptRegister("dummy", TSAdaptCreate_Dummy));
1679566063dSJacob Faibussowitsch   PetscCall(TSRegister("dummy", TSCreate_Dummy));
168c4762a1bSJed Brown #if !defined(PETSC_USE_COMPLEX)
1699566063dSJacob Faibussowitsch   PetscCall(CharacteristicRegister("dummy", CharacteristicCreate_Dummy));
170c4762a1bSJed Brown #endif
1719566063dSJacob Faibussowitsch   PetscCall(SNESLineSearchRegister("dummy", SNESLineSearchCreate_Dummy));
1729566063dSJacob Faibussowitsch   PetscCall(SNESRegister("dummy", SNESCreate_Dummy));
1739566063dSJacob Faibussowitsch   PetscCall(KSPGuessRegister("dummy", KSPGuessCreate_Dummy));
1749566063dSJacob Faibussowitsch   PetscCall(KSPRegister("dummy", KSPCreate_Dummy));
1759566063dSJacob Faibussowitsch   PetscCall(PCRegister("dummy", PCCreate_Dummy));
1769566063dSJacob Faibussowitsch   PetscCall(DMRegister("dummy", DMCreate_Dummy));
1779566063dSJacob Faibussowitsch   PetscCall(MatPartitioningRegister("dummy", MatPartitioningCreate_Dummy));
1789566063dSJacob Faibussowitsch   PetscCall(MatRegister("dummy", MatCreate_Dummy));
1799566063dSJacob Faibussowitsch   PetscCall(PFRegister("dummy", PFCreate_Dummy));
1809566063dSJacob Faibussowitsch   PetscCall(VecScatterRegister("dummy", VecScatterCreate_Dummy));
1819566063dSJacob Faibussowitsch   PetscCall(VecRegister("dummy", VecCreate_Dummy));
1829566063dSJacob Faibussowitsch   PetscCall(PetscSFRegister("dummy", PetscSFCreate_Dummy));
1839566063dSJacob Faibussowitsch   PetscCall(ISLocalToGlobalMappingRegister("dummy", ISLocalToGlobalMappingCreate_Dummy));
1849566063dSJacob Faibussowitsch   PetscCall(ISRegister("dummy", ISCreate_Dummy));
1859566063dSJacob Faibussowitsch   PetscCall(AORegister("dummy", AOCreate_Dummy));
1869566063dSJacob Faibussowitsch   PetscCall(PetscDrawRegister("dummy", PetscDrawCreate_Dummy));
1879566063dSJacob Faibussowitsch   PetscCall(PetscViewerRegister("dummy", PetscViewerCreate_Dummy));
1889566063dSJacob Faibussowitsch   PetscCall(PetscRandomRegister("dummy", PetscRandomCreate_Dummy));
1899566063dSJacob Faibussowitsch   PetscCall(PetscFinalize());
190b122ec5aSJacob Faibussowitsch   return 0;
191c4762a1bSJed Brown }
192c4762a1bSJed Brown 
193c4762a1bSJed Brown /*TEST
194c4762a1bSJed Brown 
195c4762a1bSJed Brown    test:
1963886731fSPierre Jolivet      output_file: output/empty.out
197c4762a1bSJed Brown 
198c4762a1bSJed Brown TEST*/
199