Hi,

I need to solve a system of 3 PDE and neumann boundary conditions with FEniCS 
but i have some problem. 
This is a piece of my code:

“V = FunctionSpace (mesh, 'CG',1)
W = MixedFunctionSpace ([V,V,V])
#   Trial function and test function
U = Function(W)
u0 = Function (W)
dU = TrialFunction(W)
v1, v2, v3 = TestFunctions (W)
# Split mixed function
(dg,dm,dw) = split(dU)
(g,m,w) = split(U)
(g_0,m_0,w_0) = split(u0)

g_0 = Expression('c', c=Constant(0.0), cell = tetrahedron)
m_0 = Expression('c', c=Constant(0.0), cell = tetrahedron)
w_0 = Expression('c', c=Constant(0.0), cell = tetrahedron)

F1 = g*v1*dx + 
A*inner(nabla_grad(g),nabla_grad(v1))*dx-B*g*(1-(g+m)/Tm)*v1*dx-C*g*inner(nabla_grad(w),nabla_grad(v1))*v1*dx
 + \
    - (g_0*v1*dx - A*inner(nabla_grad(g_0),nabla_grad(v1))*dx + 
B*g_0*(1-((g_0+m_0)/Tm))*v1*dx+ 
C*g_0*inner(nabla_grad(g_0),nabla_grad(v1))*v1*dx)

F2 = m*v2*dx + Am * inner(nabla_grad(m),nabla_grad(v2))*dx + 
C*g*inner(nabla_grad(w),nabla_grad(v2))*dx + \
    - (m_0*v2*dx -Am*inner(nabla_grad(m_0),nabla_grad(v2))*dx - 
C*g_0*inner(nabla_grad(w_0),nabla_grad(v2))*dx)

F3 = w*v3*dx + D*w*((g+w)/(theta + g+ w))*v3*dx + \
    - (w_0*v3*dx - D*w_0*((g_0+w_0)/(theta + g_0 + w_0))*v3*dx)

F = F1 + F2 + F3

dF = derivative(F,U,dU)

problem = NonlinearVariationalProblem(F, U, J=dF)
pdesys_newton = NonlinearVariationalSolver(problem) “


When I run it, I receive this message error:

"Traceback (most recent call last):
  File "gbm_sys.py", line 56, in <module>
    problem = NonlinearVariationalProblem(F, U)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/dolfin/fem/solving.py",
 line 117, in __init__
    F = Form(F, form_compiler_parameters=form_compiler_parameters)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/dolfin/fem/form.py",
 line 70, in __init__
    mpi_comm=mesh.mpi_comm())
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/dolfin/compilemodules/jit.py",
 line 64, in mpi_jit
    return local_jit(*args, **kwargs)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/dolfin/compilemodules/jit.py",
 line 128, in jit
    return form_compiler.jit(form, parameters=p)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ffc/jitcompiler.py",
 line 74, in jit
    return jit_form(ufl_object, parameters)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ffc/jitcompiler.py",
 line 130, in jit_form
    parameters=parameters)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ffc/compiler.py",
 line 151, in compile_form
    analysis = analyze_forms(forms, parameters)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ffc/analysis.py",
 line 59, in analyze_forms
    parameters) for form in forms)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ffc/analysis.py",
 line 59, in <genexpr>
    parameters) for form in forms)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ffc/analysis.py",
 line 132, in _analyze_form
    form_data = compute_form_data(form)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ufl/algorithms/compute_form_data.py",
 line 304, in compute_form_data
    check_form_arity(preprocessed_form, form.arguments()) # Currently testing 
how fast this is
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ufl/algorithms/check_arities.py",
 line 123, in check_form_arity
    check_integrand_arity(itg.integrand(), arguments)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ufl/algorithms/check_arities.py",
 line 117, in check_integrand_arity
    args = map_expr_dag(rules, expr, compress=False)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ufl/corealg/map_dag.py",
 line 67, in map_expr_dag
    r = function(v, *rops)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ufl/corealg/multifunction.py",
 line 72, in __call__
    return self._handlers[o._ufl_typecode_](o, *args)
  File 
"/Applications/FEniCS.app/Contents/Resources/lib/python2.7/site-packages/ufl/algorithms/check_arities.py",
 line 54, in product
    raise ArityMismatch("Multiplying expressions with overlapping form argument 
number {0}, argument is {1}.".format(x.number(), x))
ufl.algorithms.check_arities.ArityMismatch: Multiplying expressions with 
overlapping form argument number 0, argument is v_0.”

I don’t know very well the function NonlinearVariationalProblem and 
NonlinearVariationalSolver, and I think there’s a syntax error.
How can I resolve my problem or where can I see the instruction to solve a 
system of PDE in FEniCS?
Thanks.

King regards,
Valentina S.
_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support

Reply via email to