Thank you for your answers, it woks well. 

Julien 

De: "Barry Smith" <bsm...@petsc.dev> 
À: "Matthew Knepley" <knep...@gmail.com> 
Cc: "Julien BRUCHON" <bruc...@emse.fr>, "petsc-users" <petsc-users@mcs.anl.gov> 
Envoyé: Mardi 25 Juin 2024 19:14:52 
Objet: Re: [petsc-users] Trying to develop my own Krylov solver 


Make sure that you are using the latest PETSc if at all possible 

Also copy over a makefile from the cg directory (you do not need to edit any 
makefiles) 
You also need to add it to KSPRegisterAll() 

You will need to do make clean before running make all to compiler your new 
code. 

Barry 









On Jun 25, 2024, at 1:11 PM, Matthew Knepley <knep...@gmail.com> wrote: 

This Message Is From an External Sender 
This message came from outside your organization. 
On Tue, Jun 25, 2024 at 12:05 PM Julien BRUCHON via petsc-users < [ 
mailto:petsc-users@mcs.anl.gov | petsc-users@mcs.anl.gov ] > wrote: 

BQ_BEGIN

This Message Is From an External Sender 
This message came from outside your organization. 
Hi, 

Based on 'cg.c', I'm trying to develop my own Krylov solver (a projected 
conjugate gradient). I want to integrate this into my C++ code, where I already 
have an interface for PETSC which works well. However, I have the following 
questions : 

- Where am I sensed to put my 'cg_projected.c' and 'pcgimpl.h' files? Should 
they go in a directory petsc/src/ksp/ksp/impls/pcg/? If so, how do I compile 
that? Is it simply by adding this directory to the Makefile in 
petsc/src/ksp/ksp/impls/? 



Yes. 

Thanks, 

Matt 

BQ_BEGIN

- I have also tried the basic approach of putting these two files in 
directories of my own C++ code and compiling. However, I have this error at the 
link edition: 
[100%] Linking CXX shared library [ 
https://urldefense.us/v3/__http://libcoeur.so/__;!!G_uCfscf7eWS!eJ5wDIF503lmkSoc9ckRL6Hf7-ac1BL99ksSTDaYQ0VLXGrgZJzkMOQhSpDEOSQpkux5LxL9PqMV1b4f3-nU3A$
  | libcoeur.so ] 
/usr/bin/ld: src/solvers/libsolvers.a(cg_projected.c.o): warning: relocation 
against `petscstack' in read-only section `.text' 
/usr/bin/ld: src/solvers/libsolvers.a(cg_projected.c.o): relocation 
R_X86_64_PC32 against symbol `petscstack' can not be used when making a shared 
object; recompilé avec -fPIC 
/usr/bin/ld : échec de l'édition de liens finale : bad value 
collect2: error: ld returned 1 exit status 
make[2]: *** [CMakeFiles/coeur.dir/build.make:121 : [ 
https://urldefense.us/v3/__http://libcoeur.so/__;!!G_uCfscf7eWS!eJ5wDIF503lmkSoc9ckRL6Hf7-ac1BL99ksSTDaYQ0VLXGrgZJzkMOQhSpDEOSQpkux5LxL9PqMV1b4f3-nU3A$
  | libcoeur.so ] ] Erreur 1 
make[1]: *** [CMakeFiles/Makefile2:286 : CMakeFiles/coeur.dir/all] Erreur 2 
make: *** [Makefile:91 : all] Erreur 2 

Could you please tell me what is the right way to proceed? 

Thank you, 

Julien 
-- 
Julien Bruchon 
Professeur IMT - Responsable du département MPE 
LGF - UMR CNRS 5307 - [ 
https://urldefense.us/v3/__https://www.mines-stetienne.fr/lgf/__;!!G_uCfscf7eWS!dQgv-IRWC7OgdDf1X9Oew4nHSgleq2ty0AszuRPj70bBiFeCcT4RibQVAvv6FFeD081W1yY8IczRHAHopA0crg$
 | 
https://urldefense.us/v3/__https://www.mines-stetienne.fr/lgf/__;!!G_uCfscf7eWS!eJ5wDIF503lmkSoc9ckRL6Hf7-ac1BL99ksSTDaYQ0VLXGrgZJzkMOQhSpDEOSQpkux5LxL9PqMV1b7q0tC0Xw$
  ] 
Mines Saint-Étienne, une école de l'Institut Mines-Télécom 
[ 
https://urldefense.us/v3/__https://gitlab.emse.fr/bruchon/Coeur/-/wikis/home__;!!G_uCfscf7eWS!dQgv-IRWC7OgdDf1X9Oew4nHSgleq2ty0AszuRPj70bBiFeCcT4RibQVAvv6FFeD081W1yY8IczRHAG6pz3FrQ$
 | Librairie Éléments Finis Coeur ] 
0477420072 

BQ_END



-- 
What most experimenters take for granted before they begin their experiments is 
infinitely more interesting than any results to which their experiments lead. 
-- Norbert Wiener 

[ 
https://urldefense.us/v3/__http://www.cse.buffalo.edu/*knepley/__;fg!!G_uCfscf7eWS!ZSMOgmxB-aRx34PmTC3s7ZkDC-zT09xxpmLjhj_vx8oVkTvDSORUOeoTe8ZdEFCHVCUxSrs3eOz346S6E1L_$
 | 
https://urldefense.us/v3/__https://www.cse.buffalo.edu/*knepley/__;fg!!G_uCfscf7eWS!eJ5wDIF503lmkSoc9ckRL6Hf7-ac1BL99ksSTDaYQ0VLXGrgZJzkMOQhSpDEOSQpkux5LxL9PqMV1b50sR16ZQ$
  ] 

BQ_END



-- 
Julien Bruchon 
Professeur IMT - Responsable du département MPE 
LGF - UMR CNRS 5307 - [ 
https://urldefense.us/v3/__https://www.mines-stetienne.fr/lgf/__;!!G_uCfscf7eWS!eJ5wDIF503lmkSoc9ckRL6Hf7-ac1BL99ksSTDaYQ0VLXGrgZJzkMOQhSpDEOSQpkux5LxL9PqMV1b7q0tC0Xw$
  | 
https://urldefense.us/v3/__https://www.mines-stetienne.fr/lgf/__;!!G_uCfscf7eWS!eJ5wDIF503lmkSoc9ckRL6Hf7-ac1BL99ksSTDaYQ0VLXGrgZJzkMOQhSpDEOSQpkux5LxL9PqMV1b7q0tC0Xw$
  ] 
Mines Saint-Étienne, une école de l'Institut Mines-Télécom 
[ 
https://urldefense.us/v3/__https://gitlab.emse.fr/bruchon/Coeur/-/wikis/home__;!!G_uCfscf7eWS!eJ5wDIF503lmkSoc9ckRL6Hf7-ac1BL99ksSTDaYQ0VLXGrgZJzkMOQhSpDEOSQpkux5LxL9PqMV1b4DLBtKFA$
  | Librairie Éléments Finis Coeur ] 
0477420072 

Reply via email to