________________________________ From: Anders Logg <[email protected]> To: [email protected] Sent: Sunday, March 1, 2009 3:21:21 PM Subject: Re: [DOLFIN-dev] Fw: [FEniCS-dev] Dimension of function space too large for application to linear system On Sun, Mar 01, 2009 at 01:03:54PM -0800, Chong Luo wrote: > I sent the email before I subscribed to the mailing list, so I try again. > > Best, > Chong > ----- Forwarded Message ---- > From: Chong Luo <[email protected]> > To: [email protected] > Sent: Sunday, March 1, 2009 2:58:46 PM > Subject: Re: [FEniCS-dev] Dimension of function space too large for > application > to linear system > > Yes, I'm sure I have 4 levels of nested sub spaces. The function space is > defined as follows: > > vector = VectorElement("Lagrange", "triangle", 2) > scalar = FiniteElement("Lagrange", "triangle", 1) > mixed = vector+vector+scalar+scalar # > displacement+orientation+pressure+lambda What does this last line do? It just adds stuff. Do you use it for anything? That last line is supposed to go with the line above, and is a comment explaining the components of the mixed space. Also, lambda is not a good name as it is in conflict with a Python keyword. I'm surprised it compiles at all. > v = TestFunction(mixed) u = TrialFunction(mixed) > > Thus u12 corresponds to the subspace of displacement, and n12 corresponds to > the subspace of the orientation. The way you write it above, the mixed space will actually have 4 levels: mixed = ((vector + vector) + scalar) + scalar In particular, the first component of the original vector space will be subspace (0, 0, 0, 0). Is this what you intend? Note the order of nesting from left to right above. In my understanding, the first 0 gives "((vector + vector) + scalar)", the second 0 gives "(vector + vector)", the third 0 gives the first "vector". Thus (0,0,0) is enough, right? My u12 means the first "vector", not the first component of the first vector. If this is what you intend, can you post a minimal example that breaks? With minimal, I mean less than 10 lines of code. The simpler it is, the greater the chance that someone will find time to track down the bug. I'll try to do it during next week. Thank you for your time. -- Anders
_______________________________________________ DOLFIN-dev mailing list [email protected] http://www.fenics.org/mailman/listinfo/dolfin-dev
