In [2]:
from dolfin import *
import numpy as np
import scipy.sparse as sp
nn = 2
mesh = RectangleMesh(0, 0, 1, 1, nn, nn,'crossed')
order = 1
Magnetic = FunctionSpace(mesh, "N1curl", order)
Lagrange = FunctionSpace(mesh, "CG", order)
L= FunctionSpace(mesh, "DG", order-1)
C = sp.csr_matrix((Magnetic.dim(),Lagrange.dim()))
u = Function(Lagrange)
for i in range(0, Lagrange.dim() ):
zero = np.zeros((Lagrange.dim(),1))[:,0]
zero[i] = 1
u.vector()[:] = zero
uu = grad(u)
Pv = project(uu,Magnetic)
P = Pv.vector().array()
index = P.nonzero()
index = index[0]
for x in range(0,len(index)):
if np.abs(P[index[x]]) < 1e-5:
P[index[x]] = 0
print P.shape, C.shape
pn = P.nonzero()[0]
for j in range(0,len(pn)):
C[pn[j],i] = P[pn[j]]
del P
print C.todense()
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,)
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
(104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,)
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
(104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,)
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
(104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,)
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
(104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,)
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:FFC:Reusing form from cache.
(104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
(104,) (104, 41)
[[ 0. 0. 0. ..., 0. 0. -1.]
[ 0. 0. 0. ..., 1. 0. 0.]
[ 0. 0. 0. ..., 1. 0. -1.]
...,
[-1. 0. 1. ..., 0. 0. 0.]
[ 1. -1. 0. ..., 0. 0. 0.]
[ 1. 0. 0. ..., 0. 0. 0.]]
In [3]:
(u) = TrialFunction(Magnetic)
(v) = TestFunction(Magnetic)
a = dot(curl(u),curl(v))*dx
A = assemble(a)
DEBUG:UFL:No integrals left after transformation, returning empty form.
DEBUG:UFL:No integrals left after transformation, returning empty form.
Calling FFC just-in-time (JIT) compiler, this may take some time.
Level 25:FFC:Calling FFC just-in-time (JIT) compiler, this may take some time.
INFO:FFC:Compiling form ffc_form_bf081cdc74179ba823c09f929e63234b05fe8810
INFO:FFC:Compiler stage 1: Analyzing form(s)
INFO:FFC:-----------------------------------
INFO:FFC:
INFO:FFC: Name: ''
Cell: <triangle cell in 2D>
Topological dimension: 2
Geometric dimension: 2
Rank: 2
Number of coefficients: 0
Arguments: '[v_{-2}, v_{-1}]'
Coefficients: '[]'
Argument names: '[v0, v1]'
Coefficient names: '[]'
Unique elements: 'N1curl1(?)'
Unique sub elements: 'N1curl1(?)'
Domains: (Domain(Cell('triangle', 2), 'triangle_multiverse', 2, 2),
)
Top level domains: (Domain(Cell('triangle', 2), 'triangle_multiverse', 2, 2),
)
INFO:FFC: Extracting monomial form representation from UFL form
INFO:FFC: Transforming monomial form to reference element
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Estimated cost of tensor representation: 4
INFO:FFC: representation: auto --> quadrature
DEBUG:FFC: Selecting quadrature degree based on total polynomial degree of integrand: 0
INFO:FFC: quadrature_degree: auto --> 0
INFO:FFC: quadrature_rule: auto --> default
INFO:FFC:
INFO:FFC:Compiler stage 1 finished in 0.0938711 seconds.
INFO:FFC:Compiler stage 2: Computing intermediate representation
INFO:FFC:-------------------------------------------------------
INFO:FFC: Computing representation of 1 elements
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
INFO:FFC: Computing representation of 1 dofmaps
DEBUG:FFC: Reusing element from cache
INFO:FFC: Computing representation of integrals
INFO:FFC: Computing quadrature representation
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC:
QG-utils, psi_tables:
{1: {FiniteElement('Nedelec 1st kind H(curl)', Domain(Cell('triangle', 2), 'triangle_multiverse', 2, 2), 1, None): {None: {None: {(0, 1): array([[[-1.0],
[2.2204460492503131e-16]],
[[1.0],
[-2.7755575615628914e-16]],
[[-1.0000000000000002],
[2.2204460492503131e-16]]], dtype=object), (1, 0): array([[[0.0],
[0.99999999999999989]],
[[0.0],
[-1.0]],
[[0.0],
[1.0]]], dtype=object), (0, 0): array([[[-0.33333333333333331],
[0.33333333333333326]],
[[0.33333333333333331],
[0.66666666666666652]],
[[0.66666666666666674],
[0.33333333333333326]]], dtype=object)}}}}}
DEBUG:FFC:
QG-utils, psi_tables, flat_tables:
{'FE0_C1_D01': array([[2.2204460492503131e-16, -2.7755575615628914e-16,
2.2204460492503131e-16]], dtype=object), 'FE0_C1_D10': array([[0.99999999999999989, -1.0, 1.0]], dtype=object), 'FE0_C0_D10': array([[0.0, 0.0, 0.0]], dtype=object), 'FE0_C0_D01': array([[-1.0, 1.0, -1.0000000000000002]], dtype=object), 'FE0_C1': array([[0.33333333333333326, 0.66666666666666652, 0.33333333333333326]], dtype=object), 'FE0_C0': array([[-0.33333333333333331, 0.33333333333333331, 0.66666666666666674]], dtype=object)}
DEBUG:FFC:
tables: {'FE0_C1_D10': array([[0.99999999999999989, -1.0, 1.0]], dtype=object), 'FE0_C0_D10': array([[0.0, 0.0, 0.0]], dtype=object), 'FE0_C0_D01': array([[-1.0, 1.0, -1.0000000000000002]], dtype=object), 'FE0_C1': array([[0.33333333333333326, 0.66666666666666652, 0.33333333333333326]], dtype=object), 'FE0_C0': array([[-0.33333333333333331, 0.33333333333333331, 0.66666666666666674]], dtype=object)}
DEBUG:FFC:
name_map: {'FE0_C0_D10': ['FE0_C1_D01']}
DEBUG:FFC:
inv_name_map: {'FE0_C1_D01': 'FE0_C0_D10', 'FE0_C1_D10': 'FE0_C1_D10', 'FE0_C0_D10': 'FE0_C0_D10', 'FE0_C0_D01': 'FE0_C0_D01', 'FE0_C1': 'FE0_C1', 'FE0_C0': 'FE0_C0'}
DEBUG:FFC:
QG-utils, psi_tables, unique_tables:
{'FE0_C1_D10': array([[0.99999999999999989, -1.0, 1.0]], dtype=object), 'FE0_C0_D10': array([[0, 0, 0]], dtype=object), 'FE0_C0_D01': array([[-1.0, 1.0, -1.0000000000000002]], dtype=object), 'FE0_C1': array([[0.33333333333333326, 0.66666666666666652, 0.33333333333333326]], dtype=object), 'FE0_C0': array([[-0.33333333333333331, 0.33333333333333331, 0.66666666666666674]], dtype=object)}
DEBUG:FFC:
QG-utils, psi_tables, name_map:
{'FE0_C1_D01': ('FE0_C0_D10', (), True, False), 'FE0_C1_D10': ('FE0_C1_D10', (), False, False), 'FE0_C0_D10': ('FE0_C0_D10', (), True, False), 'FE0_C0_D01': ('FE0_C0_D01', (), False, False), 'FE0_C1': ('FE0_C1', (), False, False), 'FE0_C0': ('FE0_C0', (), False, False)}
INFO:FFC: Transforming cell integral
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
DEBUG:FFC: Reusing element from cache
INFO:FFC: Computing representation of forms
INFO:FFC:
INFO:FFC:Compiler stage 2 finished in 0.0330651 seconds.
INFO:FFC:Compiler stage 3: Optimizing intermediate representation
INFO:FFC:--------------------------------------------------------
INFO:FFC: Skipping optimizations, add -O to optimize
INFO:FFC:
INFO:FFC:Compiler stage 3 finished in 0.00162792 seconds.
INFO:FFC:Compiler stage 4: Generating code
INFO:FFC:---------------------------------
INFO:FFC: Generating code for 1 element(s)
DEBUG:FFC: Removing unused variable: tmp2
DEBUG:FFC: Removing unused variable: tmp1
DEBUG:FFC: Removing unused variable: tmp7
DEBUG:FFC: Removing unused variable: tmp6
DEBUG:FFC: Removing unused variable: tmp5
DEBUG:FFC: Removing unused variable: tt
DEBUG:FFC: Removing unused variable: ss
DEBUG:FFC: Removing unused variable: rr
DEBUG:FFC: Removing unused variable: tmp2
DEBUG:FFC: Removing unused variable: tmp1
DEBUG:FFC: Removing unused variable: tmp7
DEBUG:FFC: Removing unused variable: tmp6
DEBUG:FFC: Removing unused variable: tmp5
DEBUG:FFC: Removing unused variable: tt
DEBUG:FFC: Removing unused variable: ss
DEBUG:FFC: Removing unused variable: rr
DEBUG:FFC: Removing unused variable: tmp2
DEBUG:FFC: Removing unused variable: tmp1
DEBUG:FFC: Removing unused variable: tmp7
DEBUG:FFC: Removing unused variable: tmp6
DEBUG:FFC: Removing unused variable: tmp5
DEBUG:FFC: Removing unused variable: tt
DEBUG:FFC: Removing unused variable: ss
DEBUG:FFC: Removing unused variable: rr
DEBUG:FFC: Removing unused variable: tmp2
DEBUG:FFC: Removing unused variable: tmp1
DEBUG:FFC: Removing unused variable: tmp7
DEBUG:FFC: Removing unused variable: tmp6
DEBUG:FFC: Removing unused variable: tmp5
DEBUG:FFC: Removing unused variable: tt
DEBUG:FFC: Removing unused variable: ss
DEBUG:FFC: Removing unused variable: rr
DEBUG:FFC: Removing unused variable: tmp2
DEBUG:FFC: Removing unused variable: tmp1
DEBUG:FFC: Removing unused variable: tmp7
DEBUG:FFC: Removing unused variable: tmp6
DEBUG:FFC: Removing unused variable: tmp5
DEBUG:FFC: Removing unused variable: tt
DEBUG:FFC: Removing unused variable: ss
DEBUG:FFC: Removing unused variable: rr
DEBUG:FFC: Removing unused variable: tmp2
DEBUG:FFC: Removing unused variable: tmp1
DEBUG:FFC: Removing unused variable: tmp7
DEBUG:FFC: Removing unused variable: tmp6
DEBUG:FFC: Removing unused variable: tmp5
DEBUG:FFC: Removing unused variable: tt
DEBUG:FFC: Removing unused variable: ss
DEBUG:FFC: Removing unused variable: rr
INFO:FFC: Generating code for 1 dofmap(s)
INFO:FFC: Generating code for integrals
DEBUG:FFC: Removing unused variable: circumradius
DEBUG:FFC: Removing unused variable: v0v1
DEBUG:FFC: Removing unused variable: v0v2
DEBUG:FFC: Removing unused variable: v1v2
DEBUG:FFC: Removing unused variable: volume
INFO:FFC: Cell, number of operations to compute tensor: 468
INFO:FFC: Generating code for forms
INFO:FFC:
INFO:FFC:Compiler stage 4 finished in 0.0817568 seconds.
INFO:FFC:Compiler stage 4.1 finished in 8.10623e-06 seconds.
INFO:FFC:Compiler stage 5: Formatting code
INFO:FFC:---------------------------------
INFO:FFC: Output written to ./ffc_form_bf081cdc74179ba823c09f929e63234b05fe8810.h.
INFO:FFC:
INFO:FFC:Compiler stage 5 finished in 0.00196195 seconds.
INFO:FFC:FFC finished in 0.214692 seconds.
DEBUG:FFC:Compiling and linking Python extension module, this may take some time.
In [5]:
A = A.array()
In [8]:
B = A*C
B.todense()
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-8-43cc1123f947> in <module>()
1 B = A*C
----> 2 B.todense()
AttributeError: 'numpy.ndarray' object has no attribute 'todense'
Content source: wathen/PhD
Similar notebooks: