[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: MATSHELL a bit broken...
- To: petsc-dev@xxxxxxxxxxx
- Subject: Re: MATSHELL a bit broken...
- From: "Matthew Knepley" <knepley@xxxxxxxxx>
- Date: Thu, 25 Oct 2007 16:50:54 -0500
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=ZcEc0qtCm0SHw+1dvkzEEHvyfglZBlGX7zZyLnA5eTE=; b=hweWsCENJZoqgtErywHcQbsmI/Hj5hgi814LMgbHNV0y0SnzPgQzkdVQbwEzwcgYstjNg5v3yM7YdruNcakxagCxHQXR7iPLhHFWeQ4x/nwepklN/73QObYxTVmO3zF0MSAbAe99T40h4D43f7d+Xr3vRDbqQXAzt46KtjOA0UA=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=A+N4WdGvZ53lWzFpSZwCkeciY8UvUJ8atwVpBGyqnrmepxXJ1YSdCW1yoQhB/giw4hc6p0Dx5BDhIHaXa8zYbWPpqqQJptKUHQZnovd71LwyUQOvYIKQPRo5pssOO1mqgEaWFJgRtWjobAD4zuknJWMJHHwQraLoNIL6DLsZtD8=
- In-reply-to: <Pine.OSX.4.64.0710251625140.14706@bsmith.mcs.anl.gov>
- References: <e7ba66e40710251420l574e0941ud59bf7b2942408a4@mail.gmail.com> <Pine.OSX.4.64.0710251625140.14706@bsmith.mcs.anl.gov>
- Reply-to: petsc-dev@xxxxxxxxxxx
- Sender: owner-petsc-dev@xxxxxxxxxxx
It sounds fine. I just wonder what it is about methods like this, and whether
we are missing some structure.
Matt
On 10/25/07, Barry Smith <bsmith@xxxxxxxxxxx> wrote:
>
> Yes.
>
> It should be handled more systematically, inside Mat_Shell
> have an entire _MatOps table, also have a PetscBT() with one bit for
> each operation. For methods that cannot be overloaded directly turn
> that bit on. Now MatShellSetOperation() will check the corresponding bit
> if it is set then put the provided function into the _MatOps table that
> is inside the Mat_Shell. If the bit is not set then put the provided
> function into the regular _MatOps
>
> Make sense? (I don't know that is why I am asking everyone).
>
> Barry
>
> Overtime we will likely find that more methods must have the bit set.
>
>
> On Thu, 25 Oct 2007, Lisandro Dalcin wrote:
>
> > It seems MATSHELL implementation is a bit broken. If I'm not wrong, if
> > a user set the operations MOP_ASSEMBLY_END, then the use of the
> > automatic MatScale/MatShift would lead to unexpected result...
> >
> > Should this operation be managed the same way as
> > mult/multtranspose/get diagonal currently is, that is, by backupping
> > the user provided function pointer?
> >
> > BTW, sorry if I disturb you asking for making changes that seems
> > trivial, but I really do not like to change any line of code after
> > knowing your opinion.
> >
> >
>
>
--
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