Hello,
I am new to Dedalus and I am solving a system of equations that is attached. I have already solved the system in two dimensions using a Fourier basis and now, I want to solve the system of equations in a semi-infinite box (periodic boundary conditions in the x direction and a fixed boundary in the y direction). I understand this implies using a Fourier basis in the x direction and a Chebyshev basis in the y direction.
I have a system of coupled partial differential equations in displacement (u), density fields (\rho and \phi respectively) and I need to implement boundary conditions (u = 0, grad (\rho)=0, grad (\phi) = 0 at the boundaries y=0 and y=Ny).
I cannot understand how to implement the tau method for this case i.e. derive a first order form for my system of equations.
I suppose I have to add tau fields corresponding to the number of boundary conditions I need to impose (in this case: two for u, two for phi, two for rho).
The Rayleigh-Benard convection (2D IVP) problem example script defines lift as :
lift= lambda A: d3.Lift(A, lift_basis, -1)
Whereas, the Poisson equation example script defines the lift operator slightly differently as :
lift_basis = ybasis.derivative_basis(2)
lift = lambda A, n: d3.Lift(A, lift_basis, n)
I’m confused about how I should define the lift operator for my problem.
Finally, as stated earlier, I cannot understand how to re-cast my system of equations in a first order form so as to include the tau terms (like lift(tau_u1, -1) etc.
I understand that div(u), lap(u) also has to change while implementing in first order form, is a definition like this justified in my problem?
div(u) = trace(grad_u) and grad_u = d3.grad(u) + ey*lift(tau_u1)
Would be great if anyone could help me out. I’m attaching a working code of the system of equations in two dimensions (using Fourier basis) with this post.
Thanks in advance!
- Saptarshi Dasgupta,
Simons Centre for the Study of Living Machines,
National Centre for Biological Sciences, Tata Institute of Fundamental Research
--
You received this message because you are subscribed to the Google Groups "Dedalus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dedalus-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dedalus-users/26c062cc-172d-4dfa-b882-004aadb4c8c0n%40googlegroups.com.