On Tue, May 16, 2023 at 8:07 PM Khaled Nabil Shar Abdelaziz < kabde...@purdue.edu> wrote:
> This is very useful! I was more focused on my search for an example with > DMDASNES example instead of ctx. > > > > I guess from the looks of it, I can pass it directly in the ctx argument > or I can pass the pointer using the interfaces defined in the referenced > code you provided, correct? > Yes. > Another question I had is that functions has to be defined as external? Is > that a general case? Or is it just when the subroutine is defined elsewhere > so I have to define it as external. Because now when the solver calls the > FormFunction, a NULL is being passed and I can’t access the x or F > vectors. > The symbol has to be exposed by the linker, so most times (unless everything is in the same file), it needs to be external. Thanks, Matt > Thank you for your patience! I am still new to PETSc and learning how to > use it. > > > > *From:* Matthew Knepley <knep...@gmail.com> > *Sent:* Sunday, May 14, 2023 12:24 PM > *To:* Khaled Nabil Shar Abdelaziz <kabde...@purdue.edu> > *Cc:* petsc-users@mcs.anl.gov > *Subject:* Re: [petsc-users] SNESDMDASNESSetFunctionLocal in Fortran > > > > ---- *External Email*: Use caution with attachments, links, or sharing > data ---- > > > > On Sun, May 14, 2023 at 12:06 PM Khaled Nabil Shar Abdelaziz < > kabde...@purdue.edu> wrote: > > Hey there, > > > > I'm having a problem with the DMDASNESSetFunctionLocal() function in C and > its Fortran counterpart. The thing is, in C, you can pass a bunch of > variables using the ctx parameter, but in Fortran, it only seems to accept > one variable. > > > > What's weird is that the SNESSetFunction() function has a similar ctx > parameter, but in Fortran, it can handle multiple variables for ctx, unlike > DMDASNESSetFunctionLocal(). Do you know if this is on purpose, or am I > missing something? > > > > I think we show how to do this here: > > > > > https://gitlab.com/petsc/petsc/-/blob/main/src/snes/tutorials/ex5f90t.F90 > > > > Thanks, > > > > Matt > > > > Thanks in advance! > > > > Best regards, > > Khaled > > > > > -- > > 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://www.cse.buffalo.edu/~knepley/ > <http://www.cse.buffalo.edu/~knepley/> > -- 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://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>