How do you declare and initialize the matrix in usolve.F before calling MatCreate()? You should not initialize it with any value before the call.
Barry > On Mar 23, 2025, at 11:10 PM, Sanjay Govindjee via petsc-users > <petsc-users@mcs.anl.gov> wrote: > > Barry, > > I now have a compiled version of my code using the main branch. When I run > however I am getting an error in matcreate_( ) when I try to solve (actually > just set up the matrix). The console window reports > [0]PETSC ERROR: matcreate_() at > /Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c:14 Cannot create > PETSC_NULL_XXX object > [3]PETSC ERROR: matcreate_() at > /Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c:14 Cannot create > PETSC_NULL_XXX object > [2]PETSC ERROR: matcreate_() at > /Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c:14 Cannot create > PETSC_NULL_XXX object > [1]PETSC ERROR: matcreate_() at > /Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c:14 Cannot create > PETSC_NULL_XXX object > > The debugger windows all report (modulo the pid): > (lldb) process attach --pid 90952 > Process 90952 stopped > * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP > frame #0: 0x00007fff69d92746 libsystem_kernel.dylib`__semwait_signal + 10 > libsystem_kernel.dylib`__semwait_signal: > -> 0x7fff69d92746 <+10>: jae 0x7fff69d92750 ; <+20> > 0x7fff69d92748 <+12>: movq %rax, %rdi > 0x7fff69d9274b <+15>: jmp 0x7fff69d9121d ; cerror > 0x7fff69d92750 <+20>: retq > Target 0: (feap) stopped. > frame > The debugger reports for the stack: > (lldb) thread backtrace > * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP > * frame #0: 0x00007fff69d92746 libsystem_kernel.dylib`__semwait_signal + 10 > frame #1: 0x00007fff69d15eea libsystem_c.dylib`nanosleep + 196 > frame #2: 0x00007fff69d15d52 libsystem_c.dylib`sleep + 41 > frame #3: 0x0000000111acb04c libpetsc.3.022.dylib`PetscSleep(s=10) at > psleep.c:48:5 > frame #4: 0x0000000111722961 libpetsc.3.022.dylib`PetscAttachDebugger at > adebug.c:458:5 > frame #5: 0x00000001162ec7c8 > libpetsc.3.022.dylib`PetscAttachDebuggerErrorHandler(comm=0x000000011788fde8, > line=14, fun="matcreate_", > file="/Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c", num=62, > p=PETSC_ERROR_INITIAL, mess="Cannot create PETSC_NULL_XXX object", > ctx=0x0000000000000000) at adebug.c:522:9 > frame #6: 0x00000001162ecdb0 > libpetsc.3.022.dylib`PetscError(comm=0x000000011788fde8, line=14, > func="matcreate_", > file="/Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c", n=62, > p=PETSC_ERROR_INITIAL, mess="Cannot create PETSC_NULL_XXX object") at > err.c:409:15 > frame #7: 0x000000011233ecad > libpetsc.3.022.dylib`matcreate_(a=0x00000001165fdc74, b=0x000000010fcde8c8, > ierr=0x00007ffee0460308) at gcreatef.c:14:3 > frame #8: 0x000000010f7cf072 feap`usolve_ at usolve.F:138:72 > frame #9: 0x000000010f942de2 feap`presol_ at presol.f:181:72 > frame #10: 0x000000010f8cb8d8 feap`pmacr1_ at pmacr1.f:555:72 > frame #11: 0x000000010f8c60ad feap`pmacr_ at pmacr.f:614:72 > frame #12: 0x000000010f86ae4f feap`pcontr_ at pcontr.f:1375:72 > frame #13: 0x000000010fc1215e feap`main at feap87.f:173:72 > frame #14: 0x00007fff69c4ecc9 libdyld.dylib`start + 1 > frame #15: 0x00007fff69c4ecc9 libdyld.dylib`start + 1 > > Here is a peek at the frame stack: > frame #3: 0x0000000105c7104c libpetsc.3.022.dylib`PetscSleep(s=10) at > psleep.c:48:5 > 45 > 46 #if defined(PETSC_HAVE_SLEEP) > 47 else > -> 48 sleep((int)s); > 49 #elif defined(PETSC_HAVE__SLEEP) && > defined(PETSC_HAVE__SLEEP_MILISEC) > 50 else _sleep((int)(s * 1000)); > 51 #elif defined(PETSC_HAVE__SLEEP) > (lldb) up > frame #4: 0x00000001058c8961 libpetsc.3.022.dylib`PetscAttachDebugger at > adebug.c:458:5 > 455 while (left > 0) left = PetscSleep(left) - 1; > 456 } > 457 #else > -> 458 PetscCall(PetscSleep(sleeptime)); > 459 #endif > 460 } > 461 #endif > (lldb) up > frame #5: 0x000000010a4927c8 > libpetsc.3.022.dylib`PetscAttachDebuggerErrorHandler(comm=0x000000010c7f1de8, > line=14, fun="matcreate_", > file="/Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c", num=62, > p=PETSC_ERROR_INITIAL, mess="Cannot create PETSC_NULL_XXX object", > ctx=0x0000000000000000) at adebug.c:522:9 > 519 if (fun) (void)(*PetscErrorPrintf)("%s() at %s:%d %s\n", fun, > file, line, mess); > 520 else (void)(*PetscErrorPrintf)("%s:%d %s\n", file, line, mess); > 521 > -> 522 (void)PetscAttachDebugger(); > 523 abort(); /* call abort because don't want to kill other MPI > ranks that may successfully attach to debugger */ > 524 PetscFunctionReturn(PETSC_SUCCESS); > 525 } > (lldb) up > frame #6: 0x000000010a492db0 > libpetsc.3.022.dylib`PetscError(comm=0x000000010c7f1de8, line=14, > func="matcreate_", > file="/Users/sg/petsc-3.22.4main/gnu/ftn/mat/utils/gcreatef.c", n=62, > p=PETSC_ERROR_INITIAL, mess="Cannot create PETSC_NULL_XXX object") at > err.c:409:15 > 406 if (p == PETSC_ERROR_INITIAL && n != PETSC_ERR_MEMC) > (void)PetscMallocValidate(__LINE__, PETSC_FUNCTION_NAME, __FILE__); > 407 > 408 if (!eh) ierr = PetscTraceBackErrorHandler(comm, line, func, > file, n, p, lbuf, NULL); > -> 409 else ierr = (*eh->handler)(comm, line, func, file, n, p, lbuf, > eh->ctx); > 410 PetscStackClearTop; > 411 > 412 /* > (lldb) up > frame #7: 0x00000001064e4cad > libpetsc.3.022.dylib`matcreate_(a=0x000000010a7a3c74, b=0x0000000104e3e8c8, > ierr=0x00007ffeeb300308) at gcreatef.c:14:3 > 11 PETSC_EXTERN void matcreate_(MPI_Fint *a, Mat *b, PetscErrorCode > *ierr) > 12 { > 13 PetscBool null_b = !*(void**) b ? PETSC_TRUE : PETSC_FALSE; > -> 14 PETSC_FORTRAN_OBJECT_CREATE(b); > 15 CHKFORTRANNULLOBJECT(b); > 16 *ierr = MatCreate(MPI_Comm_f2c(*(a)), b); > 17 if (*ierr) return; > (lldb) up > frame #8: 0x000000010492f072 feap`usolve_ at usolve.F:138:72 > 135 onnz => mr(np(246):np(246)+ilist(2,246)-1) > 136 dnnz => mr(np(247):np(247)+ilist(2,247)-1) > 137 > -> 138 call MatCreate(PETSC_COMM_WORLD,Kmat,ierr) > 139 call MatSetSizes(Kmat,numpeq,numpeq,PETSC_DETERMINE, > 140 & PETSC_DETERMINE,ierr) > 141 if(pfeap_bcin) call MatSetBlockSize(Kmat,nsbk,ierr) > > -- > ------------------------------------------------------------------- > Sanjay Govindjee, PhD, PE > Horace, Dorothy, and Katherine Johnson Professor in Engineering > Distinguished Professor of Civil and Environmental Engineering > > 779 Davis Hall > University of California > Berkeley, CA 94720-1710 > > Voice: +1 510 642 6060 > FAX: +1 510 643 5264 > s...@berkeley.edu <mailto:s...@berkeley.edu> > https://urldefense.us/v3/__http://faculty.ce.berkeley.edu/sanjay__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwz2i2vIUk$ > > <https://urldefense.us/v3/__http://faculty.ce.berkeley.edu/sanjay__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLJDGn-rKw$> > ------------------------------------------------------------------- > > Books: > > Introduction to Mechanics of Solid Materials > https://urldefense.us/v3/__https://global.oup.com/academic/product/introduction-to-mechanics-of-solid-materials-9780192866080__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwzSCkh2Wo$ > > <https://urldefense.us/v3/__https://global.oup.com/academic/product/introduction-to-mechanics-of-solid-materials-9780192866080__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLK6eJ2xMA$> > > Continuum Mechanics of Solids > https://urldefense.us/v3/__https://global.oup.com/academic/product/continuum-mechanics-of-solids-9780198864721__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwzV-T26rE$ > > <https://urldefense.us/v3/__https://global.oup.com/academic/product/continuum-mechanics-of-solids-9780198864721__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLL3Y4t2YA$> > > Example Problems for Continuum Mechanics of Solids > https://urldefense.us/v3/__https://www.amazon.com/dp/1083047361/__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwzWGTnSEs$ > > <https://urldefense.us/v3/__https://www.amazon.com/dp/1083047361/__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLIyAaK4Eg$> > > Engineering Mechanics of Deformable Solids > https://urldefense.us/v3/__https://www.amazon.com/dp/0199651647__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwzhX2M-aM$ > > <https://urldefense.us/v3/__https://www.amazon.com/dp/0199651647__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLLf5ewSKQ$> > > Engineering Mechanics 3 (Dynamics) 2nd Edition > https://urldefense.us/v3/__http://www.amazon.com/dp/3642537111__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwz7SLTbJs$ > > <https://urldefense.us/v3/__http://www.amazon.com/dp/3642537111__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLIJH2xWfA$> > > Engineering Mechanics 3, Supplementary Problems: Dynamics > https://urldefense.us/v3/__http://www.amzn.com/B00SOXN8JU__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwzXdkwfn0$ > > <https://urldefense.us/v3/__http://www.amzn.com/B00SOXN8JU__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLJV9YZdRA$> > > ------------------------------------------------------------------- > NSF NHERI SimCenter > https://urldefense.us/v3/__https://simcenter.designsafe-ci.org/__;!!G_uCfscf7eWS!Ygp6nC3u6DJ00d8ORlci_yzE8Q_Ziwp_uCDcNW_LtYkL4Gt_P14tnFOWCIQRzX9490KkmSlZY6qiMOwzGcwzVRA$ > > <https://urldefense.us/v3/__https://simcenter.designsafe-ci.org/__;!!G_uCfscf7eWS!d3a3dMZHNHbpo2pUZUkrJ_sVG2VKWJenpA8SfSld478I1qG5iDDI_A5HMLojdmimArbDAt-E50BvvLJMVyG6GQ$> > ------------------------------------------------------------------- >