<font color="#3333ff"><font size="4">Thanks. Although I have never used petsc-dev but the standard version seemed easy to me( I am new to linux as well)... will let you know once i have tried it out.<br><br>Golam<br></font></font><br>
<div class="gmail_quote">On Fri, Feb 25, 2011 at 4:43 PM, Hong Zhang <span dir="ltr"><<a href="mailto:hzhang@mcs.anl.gov">hzhang@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Customized MatMatSolve_SeqDense() is added to petsc-dev.<br>
<div class="im"><br>
Hong<br>
<br>
On Fri, Feb 25, 2011 at 11:36 AM, Barry Smith <<a href="mailto:bsmith@mcs.anl.gov">bsmith@mcs.anl.gov</a>> wrote:<br>
><br>
</div><div><div></div><div class="h5">> A custom MatMatSolve_SeqDense() will work much better than the one that does a single solve at a time because it will use Blas 3 unstead of 2.<br>
><br>
> Barry<br>
><br>
> On Feb 25, 2011, at 11:25 AM, Hong Zhang wrote:<br>
><br>
>> Golam:<br>
>>> Oh, It thought MatMatSolve() was there as you mention something about it in<br>
>>> the FAQ. Please add it then.<br>
>><br>
>> Checking carefully, I realize that petsc supports MatMatSolve() for<br>
>> all matrix types<br>
>> by calling MatMatSolve_Basic() which calls MatSolve() for each rhs vector,<br>
>> except few matrix types (seqdense is not included) that we provided<br>
>> more efficient implementation.<br>
>><br>
>> A simplified ex1.c with MatMatSolve() for petsc-dev is attached<br>
>> (note: this only works with petsc-dev)<br>
>> for your info.<br>
>><br>
>> Hong<br>
>><br>
>><br>
>><br>
>>><br>
>>> Thanks,<br>
>>> Golam<br>
>>><br>
>>> On Thu, Feb 24, 2011 at 7:31 PM, Hong Zhang <<a href="mailto:hzhang@mcs.anl.gov">hzhang@mcs.anl.gov</a>> wrote:<br>
>>>><br>
>>>> For sequential dense in-place LU factorization, see<br>
>>>> /src/mat/examples/tests/ex1.c.<br>
>>>> For parallel, you need install PLAPACK.<br>
>>>><br>
>>>> It seems we do not have MatMatSolve() for dense matrix format. I can<br>
>>>> add it if you need it.<br>
>>>><br>
>>>> Hong<br>
>>>><br>
>>>> On Thu, Feb 24, 2011 at 8:43 PM, Golam Rabbani <<a href="mailto:mgrabbani@gmail.com">mgrabbani@gmail.com</a>><br>
>>>> wrote:<br>
>>>>> Hi,<br>
>>>>><br>
>>>>> I need to use MatLUFactor(), but do not know what to pass for the last 3<br>
>>>>> arguments. Would you please explain a bit; I did not find any example<br>
>>>>> code<br>
>>>>> for this one.<br>
>>>>><br>
>>>>> PetscErrorCode MatLUFactor(Mat mat,IS row,IS col,const MatFactorInfo<br>
>>>>> *info)<br>
>>>>><br>
>>>>> My matrix is a dense one and the result from this call will be used in<br>
>>>>> MatMatSolve().<br>
>>>>><br>
>>>>> Regards,<br>
>>>>> Golam<br>
>>>>><br>
>>><br>
>>><br>
>> <ex1.c><br>
><br>
><br>
</div></div></blockquote></div><br>