This is a read only copy of the old FEniCS QA forum. Please visit the new QA forum to ask questions

Solve form with linear and non-linear dependencies in TrialFunctions

0 votes

Hi everyone!

I'm trying to solve a variational problem on vector fields that has both linear and non-linear dependencies in TrialFunctions in the bilinear form. Obviously, defining the problem in FEniCS like a classic linear problem wouldn't work:

solve(a==L, sol, bcs)

So I guess I'll have to use the non-linear problem formulation:

solve(F==0, sol, bcs)

But I don't know if this will work, I tried to solve it this way but I get a "All terms in form must have same rank" error.

Here is the way the problem is defined:

Given an interval domain $\Gamma$, find the 2 vector functions of the curvilinear abscissa $s$ subject to the problem: (let the $X_s$ writing denote the derivation of $X$ with respect to $s$)

$find\ (u1,u2) \in \Omega = \mathbb{R}^3 \times \mathbb{R}^3\ such\ as\ \forall (v1,v2) \in \Omega,$
$\int_\Gamma u1_s\cdot v1_s ds+ u1 \times u2_s \cdot v2\ ds = \int_\Gamma f \cdot v1 + c \cdot v2 ds$

Where $f$ and $c$ are given vectors (loads). Here we can see that the bilinear form, which is the left hand side of the equation, has both linear ($u1_s\cdot v1_s$) and non linear ($u1 \times u2_s \cdot v2$) terms in TrialFunctions. Basically, I want to know if this problem can be solved defining $u1$ and $u2$ as Functions and using the non-linear formulation in the solver.

Thanks for the help!

(edited several times hoping it would be more understandable, don't hesitate to tell me if some more information is needed.)

asked Jun 10, 2015 by MathieuFV FEniCS User (1,490 points)
edited Jun 10, 2015 by MathieuFV
...