You mean I should put MatDestroy before Matcreate? But is it different from 
that if I put destroy just after create in current timestep? 
Thanks again
Daye

发自我的 iPhone

> 在 2018年5月12日,下午10:00,Matthew Knepley <[email protected]> 写道:
> 
>> On Sat, May 12, 2018 at 8:08 AM, 我 <[email protected]> wrote:
>> 
>> Thanks for your reply! I'm confused about how to create a new matrix during 
>> the time step advancing.
>> For better understand my problem, simple pseudo code (just contains the main 
>> functions)  like this:
> 
> It looks like MatDestroy should come before the next Create.
> 
>   Matt
>  
>> /////////////////////////////////
>> KSP ksp;
>> PC pc;
>> KSPCreate;
>> Mat A;
>> for(int timestep=0; timestep<20; timestep++)
>> {
>> //for example
>> if(timestep==2)
>> {
>> localsize change;
>> }
>> MatCreateMPIAIJWithArrays(PETSC_COMM_WORLD, localsize, localsize, m, m, 
>> istore, jstore, vstore, &A);
>> KSPSolve;
>> 
>> MatDestroy(&A);
>> }
>> /////////////////////////////
>> Thanks again!
>> Daye
>> 
>> 
>> 
>> 
>> At 2018-05-11 19:07:35, "Matthew Knepley" <[email protected]> wrote:
>>> On Fri, May 11, 2018 at 4:23 AM, 我 <[email protected]> wrote:
>>> Hello all,
>>> I use the function MatCreateMPIAIJWithArrays to construct my matrix. But 
>>> the number of local rows m and local columns n may change during the 
>>> timestep advancing.  When the local size changes, the error like "Petsc 
>>> error: cannot chang local size of Amat after use old sizes 10 10 new sizes 
>>> 11 11" will appear. Any suggestions about it ?
>> 
>> If the parallel layout changes, you need to create a new matrix.
>> 
>>   Thanks,
>> 
>>     Matt
>>  
>>> Thank you very much!
>>> Daye
>>> 
>>> 
>>>  
>>> 
>> 
>> 
>> 
>> -- 
>> 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/
>> 
>> 
>>  
>> 
> 
> 
> 
> -- 
> 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/

Reply via email to