On Mon, 8 Dec 2008, jurak wrote:

> Roy Stogner wrote:
>
>> On Mon, 8 Dec 2008, jurak wrote:

>>> while before one could  also  solve
>>>                             d/dt M(x) = F(x),
>>> with nonlinear M. The reason is that now the function forms residual
>>>                         R =    dt F(x_theta) + M(x_old - x)
>>> while before it would form:
>>>                         R =    dt F(x_theta) + M(x_old) - M(x).
>>
>> Yes; it was necessary to get correct results on moving-mesh problems
>> where the size of an element might change between x_old and x.
>>
>>> I would like to be able to treat nonlinearity in time derivative
>>> term.
>>
>> You might have to turn on and use the "elem_fixed_solution" which we
>> put in for use in stabilized formulations.  That'll be equal to the
>> theta_solution in an EulerSolver run.
>
> I think that I understand.
>
> By using "elem_fixed_solution" I get "x_theta = theta*x+(1-theta)*x_old",

Right.

> and from  "elem_solution" I get " x_old - x".

Right.

> Then one can  recover "x_old" and "x" and  "mass_residual()"
> function calculates  M(x_old) - M(x).

I'd thought of just calculating (dM/dx)(x_theta) * (x_old-x), which is
more in the spirit of the EulerSolver; calculating M(x_old)-M(x) is
more like the integration that occurs in the Euler2Solver.  But as
long as you're using a fixed mesh, doing either (or mixing and
matching) should work, and if the nonlinearities in your problem are
bad enough then M(x_old)-M(x) is likely to be more robust.

On moving-mesh problems, I think the robust & accurate way to
theta-integrate a nonlinear mass matrix would be
((1-theta)*(dM/dx)(x_old)+(theta)*(dM/dx)(x))*(x_old-x).  The
Euler2Solver + FEMSystem API doesn't currently make doing that very
easy...  This is one reason I've been procrastinating making the
FEMContext API changes that FEMSystem needs; I'd like to figure out
how to really get it right this time.
---
Roy

------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you.  Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to