A question on dealii tutorial step-35

61 views
Skip to first unread message

陈敏

unread,
Aug 21, 2023, 4:30:37 AM8/21/23
to dea...@googlegroups.com
Dear all,

I have a question on the step-35 when I learn it.  the step use project method to solve NS equation. And for updating the pressure step, there is a Rotational Form.  In the function of update_pressure(const bool reinit_prec), it seem it plus the rotational term(+1/Re*div u), while the formula is minus(-1/Re*div u), the pres_tmp is calculated at projection_step, and is pres_tmp is (div u).

I want to know why here is plus not minus. Maybe the minus sign was included in the original code I didn't notice or understand.

Could anyone help me out?

Best,
Chen

Wolfgang Bangerth

unread,
Aug 24, 2023, 12:35:08 PM8/24/23
to deal.II User Group
Chen:
I'm not sure anyone still active in the project knows the program well, so I asked the author of the program, Abner Salgado, about the issue and this was his answer:

> What happens is that the pressure update equation, written right above
> the implementation of
>
> update_pressure
>
> is understood in "weak" form. We multiply by a test function in the
> pressure space and the divergence term is integrated by parts (hence the +).
>
> This is so because div u is not in the pressure space and so we cannot
> simply add the corresponding coefficient vectors.
>
> It involves solving a mass matrix problem, as it can be seen in the
> implementation.
>
> Hope this clarifies things.

I hope this helps!
Best
 Wolfgang

hkch...@gmail.com

unread,
Aug 28, 2023, 9:54:40 AM8/28/23
to deal.II User Group
Dear  Wolfgang Bangerth

Thank you and thank Abner Salgado. Now, I'm clear.

Best,
Chen

Reply all
Reply to author
Forward
0 new messages