Why are Direct Numerical Simulations often impossible?

แชร์
ฝัง
  • เผยแพร่เมื่อ 1 ส.ค. 2024
  • Almost all engineering CFD applications are turbulent, but one usually does not use DNS but RANS or LES simulations. Why are Direct Numerical Simulations of Turbulence so computationally expensive. Here are the notes: github.com/Ceyron/machine-lea...
    Turbulence is one example of multiscale physics, physical phenomena where certain aspects appear in small spatial and temporal sizes and others in larger, with the big problem the different scales affect each other. Turbulence Closure Models in RANS and Subgrid Scale Models in LES are just examples of how one tries to alleviate the computational cost of resolving all scales.
    In this video, we will investigate why Dircect Numerical Simulations (DNS) of Turbulence are often quoted as being on a complexity of O(Re³) with Re being the Reynolds number.
    -------
    📝 : Check out the GitHub Repository of the channel, where I upload all the handwritten notes and source-code files (contributions are very welcome): github.com/Ceyron/machine-lea...
    📢 : Follow me on LinkedIn or Twitter for updates on the channel and other cool Machine Learning & Simulation stuff: / felix-koehler and / felix_m_koehler
    💸 : If you want to support my work on the channel, you can become a Patreon here: / mlsim
    -------
    ⚙️ My Gear:
    (Below are affiliate links to Amazon. If you decide to purchase the product or something else on Amazon through this link, I earn a small commission.)
    - 🎙️ Microphone: Blue Yeti: amzn.to/3NU7OAs
    - ⌨️ Logitech TKL Mechanical Keyboard: amzn.to/3JhEtwp
    - 🎨 Gaomon Drawing Tablet (similar to a WACOM Tablet, but cheaper, works flawlessly under Linux): amzn.to/37katmf
    - 🔌 Laptop Charger: amzn.to/3ja0imP
    - 💻 My Laptop (generally I like the Dell XPS series): amzn.to/38xrABL
    - 📱 My Phone: Fairphone 4 (I love the sustainability and repairability aspect of it): amzn.to/3Jr4ZmV
    If I had to purchase these items again, I would probably change the following:
    - 🎙️ Rode NT: amzn.to/3NUIGtw
    - 💻 Framework Laptop (I do not get a commission here, but I love the vision of Framework. It will definitely be my next Ultrabook): frame.work
    As an Amazon Associate I earn from qualifying purchases.
    -------
    Timestamps:
    00:00 Introduction
    01:06 What is Turbulence?
    01:55 Multi-Scale Physics
    02:51 Turbulence in Engineering
    03:11 When is a flow turbulent?
    04:20 The Reynolds Number
    05:17 Convective and Diffusive Transport
    06:48 Limit Cases: Euler & Stokes Equations
    07:13 Non-Linear Convection causing turbulence
    08:26 Transition to Turbulence
    09:29 Computing the Reynolds Number
    10:12 When is Re high?
    12:05 Re for Engineering CFD
    14:59 Measuring the scales of turbulence - Kolmogorov scales
    16:49 Turbulence scales dictate discretization sizes
    19:26 Assessing the computational cost
    22:03 Explicit vs Implicit Timestepping
    27:31 Total Cost of DNS Turbulence Simulation
    29:18 Aerospace example
    29:49 Top 500 fastest supercomputers
    31:08 Computational Runtime
    31:38 Design Exploration & Optimization
    32:24 Moore's law
    33:13 Electricity Consumption for Computation
    33:58 Higher Re examples
    34:40 Summary & Important Take-Away
    34:57 Outro

ความคิดเห็น • 29

  • @handyMath
    @handyMath 2 ปีที่แล้ว +3

    Really great content! You deserve way more views!

    • @MachineLearningSimulation
      @MachineLearningSimulation  2 ปีที่แล้ว +2

      Thanks so much for the feedback 😊
      Feel free to share the videos with your friends and peers, that would be super awesome.

  • @realkanavdhawan
    @realkanavdhawan ปีที่แล้ว +8

    I want this channel to grow with the Order of O(Re^3)
    Great Content Sir
    Really Appreciated!!!!

    • @MachineLearningSimulation
      @MachineLearningSimulation  ปีที่แล้ว

      Thanks for the cool comment 😁😊
      Feel free to share the channel/video with your friends and colleagues to help achieve this growth :)

  • @MrDoraHo
    @MrDoraHo 2 ปีที่แล้ว +4

    Great video : D
    I have a few comments regarding the DNS simulation for someone who wants to dive in bit more into DNS.
    1. In reality, you won't fail from simulating something in low-Res DNS simulation. Otherwise, you don't really need that high resolution to perform a DNS simulation. This is the nature of DNS simulation. The solution usually would converge to itself. The main point here would be, how much detail would you like to resolve in the DNS. (Or eddies scale) So, don't be afraid from performing the low-Res DNS if you just want to get the large-scale information as DNS usually would give your the full physical information.
    2. They are few ways to minimize the computational cost in DNS, as usually, people are just interested in only a friction of the domain of simulation. For example, the astrophysicist who performs the simulation of star-forming cloud would only be interested in those regions which are dense for star to form. In those cases, some methods such as SMR/AMR (Static/Adaptive Mesh Refinement) would help. Those methods would set a low-Res grid in the region that you are not interested in and focusing the fine structure of the dense region(High-Res grid). As a result, sometimes you can even save few orders of magnitude of the computational cost using those method but getting the information that you want.

    • @MachineLearningSimulation
      @MachineLearningSimulation  2 ปีที่แล้ว +1

      Amazing, thanks for the comment and the kind words 😊
      And you are right. I think these are some nice points for people who want to dive deeper.

  • @alibabatwist
    @alibabatwist 2 หลายเดือนก่อน +1

    thanks for your lecture, the pronunciation of inviscid is not [INVISKID] it is simply [INVISID].

  • @5ty717
    @5ty717 3 หลายเดือนก่อน +1

    Excellent

  • @benjaminmelde1479
    @benjaminmelde1479 2 ปีที่แล้ว +1

    This really was an awesome Video, thank you do much!
    In case I'm writing my Thesis about turbulent flow simulations, is the Book you mentioned the only one I need to read?

    • @MachineLearningSimulation
      @MachineLearningSimulation  2 ปีที่แล้ว

      Glad it was helpful! :) You're very welcome.
      I think it's hard to say, whether it will the only thing you have to read, but Pope's "Turbulent Flows" is a classical reference. Also check out Wilcox' "Turbulence modeling for CFD" if you are interested in turbulence models.

  • @alexfoergaard
    @alexfoergaard 9 หลายเดือนก่อน +1

    Thank you so much for the awesome video. I am not super familiar in this field so please bear with me a little here. I have the book of pope "Turbulent flows" he doesn't however use the theta that you do. How is it i should interpret the theta you are using? is it purely to tell that is is the order of magnitude that is important? Thanks in advance :D

    • @MachineLearningSimulation
      @MachineLearningSimulation  7 หลายเดือนก่อน +1

      Hi,
      thanks a lot for the comment and the kind words 😊
      I think you are referring to the "big O"-notation. In the context of this video, I wanted to express with it that something grows similarly as whatever is inside the "big O" expression. As an example, take the time scale which is O(1/sqrt(Re)): if you have 4 times higher Reynolds number, your time scale halves.
      Hope that helped 😊

  • @ibonitog
    @ibonitog 5 หลายเดือนก่อน +1

    Great video! What software do you use for your handwriting? Cheers!

    • @MachineLearningSimulation
      @MachineLearningSimulation  4 หลายเดือนก่อน

      Thanks, it's Xournal++.

    • @ibonitog
      @ibonitog 4 หลายเดือนก่อน +1

      @@MachineLearningSimulation no ipad support :( it would be perfect otherwise! thanks for your time! :)

  • @codeChrit
    @codeChrit ปีที่แล้ว +1

    Great video. I have a question at time stamp 31:19, why is 10^6 seconds equal to 1 month, and not ~12 days?

    • @MachineLearningSimulation
      @MachineLearningSimulation  ปีที่แล้ว

      You're welcome 😊
      Thanks for the comment. Of course, to be precise, 10^6 seconds are only 11.sth days. Although there is of course a factor of 2 to 3 between this estimate and a month, you could argue it's still in the same order of magnitude.
      The estimates done in the video are extremely rough, we lose many significant digits along the way. Also, the rounding we did in the exponent to Re^3 is mathematically questionable :D. You should also remember that the full utilization of supercomputers require perfect parallelization of the problem (and perfect programming) which is impossible to achieve. That alone would probably add another order of magnitude to the runtime.
      In the end, I think the important takeaway is the infeasibility of the simulations with our current (and future) hardware 😊

  • @mermanstorm3562
    @mermanstorm3562 2 ปีที่แล้ว +1

    I note you slipped in an extra Re ^ 0.25. At Re = 10^8, that is a factor of 100. Leave out that factor of 100, and your example of an aircraft computation would not take a month, but 8 hours. In a year you could do all 1000 cases, a reasonable time for a new aircraft design cycle.

    • @MachineLearningSimulation
      @MachineLearningSimulation  2 ปีที่แล้ว

      Thanks for the comment :).
      You are right, the simplification of changing from Re^(11/4) to Re^(12/4)=Re^(3) is a rather rough one and results in the factor of 100 in runtime for the aerospace example. However, I'd argue it is okay since our estimates are super rough in the first place. We are not accounting for potential additional effects and also build upon the Kolmogorov scales.
      In the end, it doesn't greatly matter whether it will take 8 hours or a month, as it is still running on (the world's fastest) supercomputer. The estimate also assumed the CFD simulation would scale as good as benchmark software (which it will not, to a large amount). Hence, runtimes will be considerably longer. Ultimately, industrial CFD applications don't have access to supercomputer-like resources, and it would also be unreasonable to use a (full) supercomputer for an entire year, the costs are unbearable.
      Let me know what you think :).

  • @saadmirza2727
    @saadmirza2727 ปีที่แล้ว

    It's not 500 Teraflops, I think it's 500,000 TeraFlops

    • @MachineLearningSimulation
      @MachineLearningSimulation  ปีที่แล้ว

      Hi, thanks for the comment. :) Do you have a timestamp to which point in the video you are referring to?

    • @saadmirza2727
      @saadmirza2727 ปีที่แล้ว

      29:50

    • @saadmirza2727
      @saadmirza2727 ปีที่แล้ว +1

      Oh sorry you’re right, you did 10^5 which is peta flops…

    • @MachineLearningSimulation
      @MachineLearningSimulation  ปีที่แล้ว

      @@saadmirza2727 Great. :) Thanks for the clarification. And of course, not problem!

  • @FerdiTekin
    @FerdiTekin 2 ปีที่แล้ว

    TURBULENCE_XYZ:
    Tn (Like Capacitance)
    Lx (Like Capacitance)
    Hy (Like Capacitance)
    Wz (Like Capacitance)
    SOLID
    Position: Check CENTERED
    SURFACE
    Position: Check SURFACED
    turbulent_xyz:
    tn (Capacitance Roll)
    lx (Capacitance Roll)
    hy (Capacitance Roll)
    wz (Capacitance Roll)
    ATOMIC VOLUME
    Position: Check AIR
    When TURBULENCE_XYZ take direction, and velocity, turbulent_xyz effected this situation. Influence does not actually reach a higher level than affecting, but the sum of the active dimension stitches can be higher than certain values of the influencer.
    Mean: turbulent_xyz [tn, lx, hy, wz] total bigger than TURBULENCE_XYZ [Tn, Lx, Hy, Wz].

    • @MachineLearningSimulation
      @MachineLearningSimulation  2 ปีที่แล้ว +3

      Hi, thanks for the comment. I can't quite decrypt what your comment is supposed to be about? 😅

    • @FerdiTekin
      @FerdiTekin 2 ปีที่แล้ว

      @@MachineLearningSimulation
      TURBULENCE DIMENSIONS
      TURBULENCE_XYZ[Tn, Lx, Hy, Wz] > turbulent_xyz[tn, lx, hy, wz].
      OR
      turbulent_xyz[tn, lx, hy, wz] > TURBULENCE_XYZ[Tn, Lx, Hy, Wz].