Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

A Nonlinear first order Differential equation

  1. Mar 8, 2016 #1
    I need to solve the well known momentum equation in 3D cylindrical coordinates:
    ρ(∂v/∂t +(v.∇)v)=A

    where A and the velocity v are both local vector variables.

    I am actually looking for the stationary solution to the equation, i.e. no ∂/∂t term)

    I have tried evolving the velocity and tried successive overrelaxation method but separately calculating derivatives. I cant get convergence.

    Any one with a suggestion? I actually use IDL. So a suggestion in that would be even better.

  2. jcsd
  3. Mar 10, 2016 #2


    User Avatar
    Gold Member

    What are your boundary conditions?
  4. Mar 10, 2016 #3
    The theta and phi coordinates are cyclic (v(0)=v(2*pi)), v=0, dv/dr=0 at v=0 and a.
  5. Mar 10, 2016 #4
    you can write u*(du/dx) as 1/2 (d(u^2)/dx). Try solving it that way.
  6. Mar 10, 2016 #5
    I will try this, but that is only one term in (v.∇)v. The parameters have 3 components and the components of the equation have other component terms such as vr∂vθ/∂r.
  7. Mar 10, 2016 #6


    User Avatar
    Gold Member

    Is there any chance your iterative methods are getting thrown off by coordinate and/or basis vector singularities? Did you include the derivative of the radial and angular basis vectors in the nonlinear term? Also, what's the resolution of your mesh?
  8. Mar 11, 2016 #7
    Good questions. My present mesh sizes are about 5% of the variation length of the driving term A. The driving term is sinusoidal in theta and phi with a mild radial dependence. (180,50,50) mesh. There is a sharper variation in one area and I have remeshed there 5 times. It is quite possible that the divergence of iteration is seeded in one location. I need to interrupt the iteration and see. As you can see 3D problems are expensive in finer mesh. But yes, I will try doubling the mesh and see.

    I realized that the proper way to solve it is to use a stream function - v=∇xψ (divergence free flow). This would reduce the number of equations and couplings, but would make it a higher order equation.
  9. Mar 11, 2016 #8


    User Avatar
    Gold Member

    Good plan. I would also recommend developing some way of visualizing the 3D field so that you can look at it when you interrupt. You're going to need some way of seeing what's making the algorithm cough in your data and a good bit of luck to find what's causing non-convergence. It's still possible that it's just not converging fast enough.

    The calculations might be less expensive in Cartesian. I'd try that if you get stumped.
  10. Mar 12, 2016 #9


    User Avatar
    Science Advisor

    In your first post you said "in cylindrical coordinates". Cylindrical coordinates has only a "theta" coordinate, not phi.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted