[petsc-users] DMLocalToGlobal
Dharmendar Reddy
dharmareddy84 at gmail.com
Tue Jan 21 22:52:41 CST 2014
Hello,
I did the test again with CHKERRQ(ierr) after each line in
sequence 1 to 4.
I get ierr = 0
lb begin: 0
ub begin: 0
lb end: 0
ub end : 0
Thanks
Reddy
On Tue, Jan 21, 2014 at 10:04 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
> On Jan 21, 2014, at 9:52 PM, Dharmendar Reddy <dharmareddy84 at gmail.com> wrote:
>
>> Hello,
>> I am trying to understand the usage rule for DMLocalToGlobalBegin/End.
>>
>> I have a sequence of calls like this:
>>
>> call DMLocalToGlobalBegin(dm, localLB, INSERT_VALUES, LB, ierr) ----- (1)
>>
>> call DMLocalToGlobalBegin(dm, localUB, INSERT_VALUES, UB, ierr) ------ (2)
>>
>> call DMLocalToGlobalEnd(dm, localLB, INSERT_VALUES, LB, ierr) ------- (3)
>>
>> call DMLocalToGlobalEnd(dm, localUB, INSERT_VALUES, UB, ierr) --------(4)
>>
>>
>> call SNESVISetVariableBounds(snes,LB,UB, ierr)
>>
>>
>> SNES fails to run. I get function norm zero right in the first call
>> and simulation ends.
>>
>>
>> If i change the order of DM calls above to
>>
>> 1,3,2,4 then code works as expected
>>
>>
>> Does that mean the End call should occur immediately after Begin call ?
>
> Currently they do need to be called in that order. Note that if you checked the ierr after (2) it would have indicated an error condition. I am surprised that PETSc didn’t print an error message “Scatter ctx already in use”. Note in FORTRAN you can do a lazy check of ierr with
>
> call DMLocalToGlobalBegin(dm, localUB, INSERT_VALUES, UB, ierr) ; CHKERRQ(ierr)
>
> so it does not make the Fortran code particularly ugly just put the CHKERRQ(ierr) on the same line as the code
>
>
> Barry
>
>
>>
>>
>> Thanks
>> Reddy
>
--
-----------------------------------------------------
Dharmendar Reddy Palle
Graduate Student
Microelectronics Research center,
University of Texas at Austin,
10100 Burnet Road, Bldg. 160
MER 2.608F, TX 78758-4445
e-mail: dharmareddy84 at gmail.com
Phone: +1-512-350-9082
United States of America.
Homepage: https://webspace.utexas.edu/~dpr342
More information about the petsc-users
mailing list