[petsc-users] VecSetValue
Sanjay Govindjee
s_g at berkeley.edu
Mon Mar 24 17:26:41 CDT 2025
My odessy to update my code to the main branch continues...I am now
encountering an error with VecSetValue:
[0]PETSC ERROR: VecSetValues() at
/Users/sg/petsc-3.22.4main/src/vec/vec/interface/rvector.c:926 Null
Pointer: Parameter # 4
This is on a single processor run -- I got tired of closing all those
debug windows. My call looks like
call VecSetValue(rhs, k-1, b(j), ADD_VALUES, ierr)
and the first two data types are Vec and integer, and for the third
real (kind=8) :: b(:) ! comes through the argument list for the
subroutine
vecsetvalue_ however seems to be receiving va=0x0000000000000000. I see
that formally the value is supposed to be PetscScalar; is that the
issue? The thread backtrace is below.
(lldb) process attach --pid 51640
Process 51640 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.
Executable module set to "/Users/sg/Feap/ver87/parfeap/feap".
Architecture set to: x86_64h-apple-macosx-.
(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: 0x000000010a1fb04c
libpetsc.3.022.dylib`PetscSleep(s=10) at psleep.c:48:5
frame #4: 0x0000000109e52961
libpetsc.3.022.dylib`PetscAttachDebugger at adebug.c:458:5
frame #5: 0x000000010ea1c7c8
libpetsc.3.022.dylib`PetscAttachDebuggerErrorHandler(comm=0x0000000110e78de8,
line=926, fun="VecSetValues",
file="/Users/sg/petsc-3.22.4main/src/vec/vec/interface/rvector.c",
num=85, p=PETSC_ERROR_INITIAL, mess="Null Pointer: Parameter # 4",
ctx=0x0000000000000000) at adebug.c:522:9
frame #6: 0x000000010ea1cdb0
libpetsc.3.022.dylib`PetscError(comm=0x0000000110e78de8, line=926,
func="VecSetValues",
file="/Users/sg/petsc-3.22.4main/src/vec/vec/interface/rvector.c",
n=85, p=PETSC_ERROR_INITIAL, mess="Null Pointer: Parameter # %d") at
err.c:409:15
frame #7: 0x000000010a866bf2
libpetsc.3.022.dylib`VecSetValues(x=0x00007fdb53068450, ni=1,
ix=0x00007ffee6d74098, y=0x0000000000000000, iora=ADD_VALUES) at
rvector.c:926:3
frame #8: 0x000000010a82c1dc
libpetsc.3.022.dylib`vecsetvalue_(v=0x00000001093ca8f8,
i=0x00007ffee6d74098, va=0x0000000000000000,
mode=0x00007ffee6d74094, ierr=0x00007ffee6d74238) at zvectorf.c:20:11
frame #9: 0x0000000108ebbb48 feap`usolve_ at usolve.F:256:72
frame #10: 0x000000010904cd9c feap`psolve_ at psolve.f:232:72
frame #11: 0x0000000108fb7edc feap`pmacr1_ at pmacr1.f:667:72
frame #12: 0x0000000108fb20dd feap`pmacr_ at pmacr.f:614:72
frame #13: 0x0000000108f56e7f feap`pcontr_ at pcontr.f:1375:72
frame #14: 0x00000001092fe18e feap`main at feap87.f:173:72
frame #15: 0x00007fff69c4ecc9 libdyld.dylib`start + 1
(lldb) up
frame #1: 0x00007fff69d15eea libsystem_c.dylib`nanosleep + 196
libsystem_c.dylib`nanosleep:
-> 0x7fff69d15eea <+196>: testl %eax, %eax
0x7fff69d15eec <+198>: jns 0x7fff69d15eb5 ; <+143>
0x7fff69d15eee <+200>: callq 0x7fff69d1e008 ; symbol stub for:
__error
0x7fff69d15ef3 <+205>: cmpl $0x3c, (%rax)
(lldb) up
frame #2: 0x00007fff69d15d52 libsystem_c.dylib`sleep + 41
libsystem_c.dylib`sleep:
-> 0x7fff69d15d52 <+41>: movl %eax, %ecx
0x7fff69d15d54 <+43>: xorl %eax, %eax
0x7fff69d15d56 <+45>: cmpl $-0x1, %ecx
0x7fff69d15d59 <+48>: jne 0x7fff69d15d85 ; <+92>
(lldb) up
frame #3: 0x000000010a1fb04c 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: 0x0000000109e52961
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: 0x000000010ea1c7c8
libpetsc.3.022.dylib`PetscAttachDebuggerErrorHandler(comm=0x0000000110e78de8,
line=926, fun="VecSetValues",
file="/Users/sg/petsc-3.22.4main/src/vec/vec/interface/rvector.c",
num=85, p=PETSC_ERROR_INITIAL, mess="Null Pointer: Parameter # 4",
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: 0x000000010ea1cdb0
libpetsc.3.022.dylib`PetscError(comm=0x0000000110e78de8, line=926,
func="VecSetValues",
file="/Users/sg/petsc-3.22.4main/src/vec/vec/interface/rvector.c",
n=85, p=PETSC_ERROR_INITIAL, mess="Null Pointer: Parameter # %d") 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: 0x000000010a866bf2
libpetsc.3.022.dylib`VecSetValues(x=0x00007fdb53068450, ni=1,
ix=0x00007ffee6d74098, y=0x0000000000000000, iora=ADD_VALUES) at
rvector.c:926:3
923 PetscValidHeaderSpecific(x, VEC_CLASSID, 1);
924 if (!ni) PetscFunctionReturn(PETSC_SUCCESS);
925 PetscAssertPointer(ix, 3);
-> 926 PetscAssertPointer(y, 4);
927 PetscValidType(x, 1);
928
929 PetscCall(PetscLogEventBegin(VEC_SetValues, x, 0, 0, 0));
(lldb) up
frame #8: 0x000000010a82c1dc
libpetsc.3.022.dylib`vecsetvalue_(v=0x00000001093ca8f8,
i=0x00007ffee6d74098, va=0x0000000000000000,
mode=0x00007ffee6d74094, ierr=0x00007ffee6d74238) at zvectorf.c:20:11
17 PETSC_EXTERN void vecsetvalue_(Vec *v, PetscInt *i,
PetscScalar *va, InsertMode *mode, PetscErrorCode *ierr)
18 {
19 /* cannot use VecSetValue() here since that uses
PetscCall() which has a return in it */
-> 20 *ierr = VecSetValues(*v, 1, i, va, *mode);
21 }
22
23 PETSC_EXTERN void vecsetvaluelocal_(Vec *v, PetscInt *i,
PetscScalar *va, InsertMode *mode, PetscErrorCode *ierr)
(lldb) up
frame #9: 0x0000000108ebbb48 feap`usolve_ at usolve.F:256:72
253 if( k .gt. 0 ) then
254 j = j + 1
255 ! write(*,*) 'rank: ',rank,' k,j,b(j)
',k,j,b(j)
-> 256 call VecSetValue(rhs, k-1, b(j),
ADD_VALUES, ierr)
257 endif
258 end do
--
-------------------------------------------------------------------
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_g at berkeley.edu
https://urldefense.us/v3/__http://faculty.ce.berkeley.edu/sanjay__;!!G_uCfscf7eWS!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w9azVgSHQ$
-------------------------------------------------------------------
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!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w_VG5HHMA$
Continuum Mechanics of Solids
https://urldefense.us/v3/__https://global.oup.com/academic/product/continuum-mechanics-of-solids-9780198864721__;!!G_uCfscf7eWS!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w9T8MhzbQ$
Example Problems for Continuum Mechanics of Solids
https://urldefense.us/v3/__https://www.amazon.com/dp/1083047361/__;!!G_uCfscf7eWS!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w_GqMlonw$
Engineering Mechanics of Deformable Solids
https://urldefense.us/v3/__https://www.amazon.com/dp/0199651647__;!!G_uCfscf7eWS!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w9troczOg$
Engineering Mechanics 3 (Dynamics) 2nd Edition
https://urldefense.us/v3/__http://www.amazon.com/dp/3642537111__;!!G_uCfscf7eWS!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w_g7GDa1w$
Engineering Mechanics 3, Supplementary Problems: Dynamics
https://urldefense.us/v3/__http://www.amzn.com/B00SOXN8JU__;!!G_uCfscf7eWS!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w97Vbz6Dw$
-------------------------------------------------------------------
NSF NHERI SimCenter
https://urldefense.us/v3/__https://simcenter.designsafe-ci.org/__;!!G_uCfscf7eWS!eYHZJmdbbAvMW_dwF5Gl5kuFLWS9Tllmp4OCyVBwo0hVI25qi3ZiV-maVgXQ7wmZ8dKjEGu1hb5u7w_SCyLZOg$
-------------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20250324/ba12d97f/attachment-0001.html>
More information about the petsc-users
mailing list