dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #12424
Fw: [FEniCS-dev] Dimension of function space too large for application to linear system
I sent the email before I subscribed to the mailing list, so I try again.
Best,
Chong
----- Forwarded Message ----
From: Chong Luo <luo.chong@xxxxxxxxx>
To: dolfin-dev@xxxxxxxxxx
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
v = TestFunction(mixed)
u = TrialFunction(mixed)
Thus u12 corresponds to the subspace of displacement, and n12 corresponds to the subspace of the orientation.
Best,
Chong
________________________________
From: Anders Logg <logg@xxxxxxxxx>
To: fenics-dev@xxxxxxxxxx; Discussion of DOLFIN development <dolfin-dev@xxxxxxxxxx>
Sent: Saturday, February 28, 2009 2:50:30 PM
Subject: Re: [FEniCS-dev] Dimension of function space too large for application to linear system
On Fri, Feb 27, 2009 at 10:38:04PM -0800, Chong Luo wrote:
> I have been trying to migrate my program from dolfin 0.8 to dolfin 0.9, and I
> got the following error:
>
> terminate called after throwing an instance of 'std::runtime_error'
> what(): *** Error: Dimension of function space (34704920) too large for
> application to linear system (4934 rows).
> [chong-desktop:06784] *** Process received signal ***
>
> The code causing the problem is the following:
> // User defined assemble of residual vector
> void F(GenericVector& b, const GenericVector& x)
> {
> assemble(b, *L);
> bcDsp->apply(b, x); // <- this is the part that cause the
> runtime_error
> bcOrt->apply(b, x);
> }
> And it's part of "class MyNonlinearProblem : public NonlinearProblem, public
> Parametrized".
>
> As for bcDsp, it was created by the following code:
> SubSpace un(*V, 0, 0);
> SubSpace u12(un, 0);
Are you sure you have 4 levels of nested sub spaces?
You are saying here that u12 is the first subspace of un which in turn
is the first subspace of the first subspace of V.
Further questions should be posted to dolfin-dev.
--
Anders
> bcDsp = new DirichletBC(u12, uD, sub_domains, 5);
>
> I checked the dimension of the FunctionSpace of bcDsp, and dim(u12) = 2178,
> which is finite, unlike what's shown in the runtime error message (34704920).
>
> Could you help me indentify what might be causing the problem?
>
> Thank you!
Follow ups