[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
PETSc jacobian
- To: petsc-users@xxxxxxxxxxx
- Subject: PETSc jacobian
- From: "Jianing Shi" <jianings@xxxxxxxxx>
- Date: Tue, 6 Mar 2007 14:04:39 -0600
- Dkim-signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=GWmr8lJsynm8DRKi3DUIMjsJeEzwFqhhG/ABgrapvTXO6WR35ndLUf6FNEFIk+FpO5XlwdFPklFur/whLV1BRup6DX7Jd/y9tODcxoaIvZHuXLIo/VbLDo59GYvNlwwmhbjvkl1b8k8EYkhugSF/Rg2OYrm6uq6z3npi87/8RdM=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=OY84YcN8LG2l0PmkNx7YvWsPaRt6Zw63Y9/NwKdDrtUVWzNIm1o5s0V4+CDQxbkSL/U9zgeKqlphsf1+ag5O8TqMRZCVeEetAMFz4nLcjUbAqX/EE8Ir2zRyi8wk/nEeN9ah5LUQa4K1QQ7fjOpy1BZ5TnFNyz34ZD7i+KsjuEY=
- Reply-to: petsc-users@xxxxxxxxxxx
- Sender: owner-petsc-users@xxxxxxxxxxx
Hi PETSc designers,
I have a non-trivial extension to a diffusion problem, that involves
talking between neighboring (neighboring band) points. I have a
question about the data structures in PETSc, since I am fantasized
about elegant designs.
I have two options: 1) use structured grid (DA) 2) in some
applications, my grid can be unstructured, in fact a directed graph.
I am considering the first option now (since I still need to read up
onto the PETSc mesh/graph).
Suppose I need to represent the connectivity of a point to its
neighboring points, I need a weight matrix. I guess I can
(A) use a DA structure, setting DOF = total number of points connected
to a point (assuming the connectivity range for each point is the
same).
or
(B) use a Jacobian matrix data structure to store these weights. In
this case, I guess I will use MATMPIAIJ or MATMPIBAIJ.
- What is the difference between these two types of Jacobian matrix?
- For distributed sparse matrix like MATMPIAIJ, MATMPIBAIJ, how
efficient is it to extract one column of the matrix M(i,:) ? Does
PETSc have routines to do this?
- How is such a distributed sparse matrix stored on different
processors, how is it divided up, and collected?
I want to understand this, because if a distributed sparse matrix is
an efficient representation of my sparse weight matrix, I will go for
this option (B). Otherwise, I will opt for option (A).
Thanks!
Jianing