FluidX3D - A New Era of Computational Fluid Dynamics

Поділитися
Вставка
  • Опубліковано 5 вер 2024
  • With slow commercial #CFD software, compute time for my PhD studies would have exceeded decades. The only way to success was to master #GPU programming, write my own CFD solver from the ground up and turn runtime to days. Now a 10 billion cell simulation (like in the video) runs over night on an 8-GPU server, visualizing hundreds of TeraByte with my #OpenCL graphics engine.
    I have since published my source code to make this powerful tool freely available to other researchers/students/hobbyists. Today #FluidX3D the most popular CFD code on GitHub with 1.6k Stargazers: github.com/Pro...
    Thanks to the people at Jülich Supercomputing Centre for letting me test their hardware!
    Music: Odyssey - JIGLR: • Odyssey - JIGLR | Roya...

КОМЕНТАРІ • 213

  • @ChrisDaGamer
    @ChrisDaGamer 2 місяці тому +15

    I just tested this on my 4 year old midrange pc ( GTX 1660 Super GPU, using the river demo shown here ) and it ran in near real time! ( like 15fps, I wasn't keeping track ) I cant even begin to imagine how much effort it takes to have a entire fluid simulation run at a interactive speed, well done man!
    Also your documentation is excellent, I got it up and running in less than 5 minutes.
    ( ps: If I can figure out how to make my own fluid sims, I'm almost certainly going to use this more than just this one time. )

  • @GuagoFruit
    @GuagoFruit Рік тому +907

    Here we see excellent visualisations murdered by youtube bitrate.

    • @willies545
      @willies545 Рік тому +43

      watch it in 2160p

    • @GuagoFruit
      @GuagoFruit Рік тому +53

      @@willies545 Didn't help. eg at the start you can see the colour on the nose is super blocky. Only the water simulation parts were decent, so much quality is lost in the other flow visualisations.

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +136

      @@GuagoFruit on LinkedIn/Twitter it just looks like a smeared mess. Their video compression is even worse.

    • @a2e5
      @a2e5 Рік тому +17

      @@GuagoFruit saturated colormaps are not exactly friendly to video compressors designed with more "natural" stuff in mind. the chroma subsampling and other ways to differently weigh luma vs chroma absolutely hate these stuff. the high amount of particle motion isn't great either, but considering it worked okay-ish on less colored water bits it's probably mostly due to the color.

    • @brunoaraujoespin
      @brunoaraujoespin Рік тому

      relatable

  • @LinkyTea
    @LinkyTea Рік тому +147

    I cant imagine how long and tedious it took to write your own program for these visualizations! I know almost nothing about physics or science, but I know from experience coding is a very complicated process and this is absolutely impressive!

    • @wariacix750
      @wariacix750 Рік тому +12

      probably like 10 minutes
      if by minutes you mean years ofc

    • @krimouAAA
      @krimouAAA 9 місяців тому +2

      it exists all sorts of softwares ready to get the job done. you need to know how to enter your data into these softwares. a software to draw the geometry of the case to study, a software to mesh the geometry, a software to enter physical data like temperature, pressure, viscosity of the fluid ..., a software to do computations to get results and a software to visualize the results.
      what you are seeing how a software displays the results in a finite number of cells at a certain amount of timesteps or a successive groups of results that are displayed continuously.

    • @LinkyTea
      @LinkyTea 9 місяців тому

      wow, sounds cool but very intricate!@@krimouAAA

    • @ahmadfebriansyah
      @ahmadfebriansyah 9 місяців тому

      The majority of computer students do not understand 100% coding

  • @ProjectPhysX
    @ProjectPhysX  Рік тому +62

    Updated the channel trailer!
    Yes yes tutorials are coming soon™, be patient!
    UPDATE: I have added the documentation / user manual on GitHub: github.com/ProjectPhysX/FluidX3D/blob/master/DOCUMENTATION.md

    • @_John_P
      @_John_P Рік тому +8

      Is it possible to simulate fire?

    • @NUCLEARARMAMENT
      @NUCLEARARMAMENT Рік тому +4

      thanks again for the amazing content!

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +4

      @@_John_P no chemical reactions unfortunately. But thermal convection is possible.

    • @_John_P
      @_John_P Рік тому +1

      @@ProjectPhysX And what about the emissivity of the flame?

    • @TheDarkrider551
      @TheDarkrider551 Рік тому +1

      Very excited for when they do come out!

  • @thomasgoodwin2648
    @thomasgoodwin2648 Рік тому +22

    Don't know about anyone else.... but I'm Navier-STOKED!

  • @lucamagni99
    @lucamagni99 Рік тому +49

    Fantastic! One of the projects that I follow with more interest!

  • @annraven749
    @annraven749 Рік тому +17

    And this, ladies and gentlemen, is how real scientists flex!

  • @bartekburmistrz8679
    @bartekburmistrz8679 Рік тому +13

    Thank you, it's the work of people like you that inspire and helps with young passionate people that later become field leaders, often times pushing science to it's very limits and thank you, from me as a person as I will now attempt to run a CFD simulation of a crab because no one can stop me now

  • @davidebic
    @davidebic 11 місяців тому +6

    Can't wait to take my partial differential equations course next semester when looking at this.

  • @zipped1214
    @zipped1214 6 місяців тому +3

    As an aerospace engineering student this is absolutely incredible, thank you for making this

  • @monkeeseemonkeedoo3745
    @monkeeseemonkeedoo3745 10 місяців тому +2

    Thank you for making your work available like this! I'm sure it will inspire a lot of people

  • @claude7473
    @claude7473 2 місяці тому +1

    YEsss looks very nice, will try it ASAP.

  • @user-fd4zu7vc1c
    @user-fd4zu7vc1c 4 місяці тому +1

    Bummer to see such a high quality product demo RUINED by UA-cam compression! Great work can't wait to try myself

  • @dejgo351
    @dejgo351 8 місяців тому +3

    0:37 Starship!

  • @pawelczubinski6413
    @pawelczubinski6413 Місяць тому +1

    that looks awesome

  • @justenergy1724
    @justenergy1724 Рік тому +2

    That is insane! Very relaxing :D

  • @Blingchachink
    @Blingchachink 23 дні тому +1

    Thank you

  • @Unique-Concepts
    @Unique-Concepts Рік тому +4

    😮😮, master piece

  • @ChipboardDev
    @ChipboardDev Рік тому +5

    Great work!

  • @MarieAmeliaFreyaAster
    @MarieAmeliaFreyaAster Місяць тому +1

    Holy shit, congratz

  • @bexiexz
    @bexiexz 2 місяці тому +1

    so cool!

  • @wilhelmwimmer942
    @wilhelmwimmer942 Рік тому +1

    Thx for the wonderful toolkit!

  • @happy_tomcat
    @happy_tomcat 18 днів тому +1

    Good job!

  • @MrZwulch
    @MrZwulch Рік тому +2

    I miss the aerodynamics of a cow simulation in this trailer:(

    • @InternetListener
      @InternetListener Рік тому +2

      In fact the cow it's mathematically speaking like an sphere and phisicists should know that real fluid drops tend to be spherical because of the surface tension is stronger force than air drag resistance, so in 0:45 you're just seeing a falling cow taking a bath.

  • @quillmaurer6563
    @quillmaurer6563 Рік тому +7

    Awesome! I've been looking for accessible CFD for a long time. Have a lot of CAD experience but not much CFD - how easy is this to learn? Does it only output flow visualization, or can it also provide useful numbers for an engineering context like drag and lift forces? For many years I've wanted to evaluate configurations of spoilers or air deflectors on my classic Volkswagen Beetle to try to improve fuel economy, CFD probably wouldn't be the end-all answer but could be a really useful and interesting tool alongside real-world testing (yarn tufts, pressure sensors, and coast-down). Basically combine this with all of Julian Edgar's videos on car aerodynamics.

  • @leonard9636
    @leonard9636 Рік тому +1

    This is insane ! Insane !!

  • @user-rx4cy4oj9i
    @user-rx4cy4oj9i 8 місяців тому +1

    It's amazing! l want to do what you have done one day.

  • @herrkunde6941
    @herrkunde6941 Рік тому +13

    This is really cool! It almost looks like DNS. Are there any plans to incorporate an energy distribution to model heat transfer problems, for example?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +5

      It is almost DNS (DNS-LES). Pure DNS for super large Reynolds number is still out of reach even for the largest supercomputers. Thermal convection flows are already possible with one of the extensions. See here for an example: ua-cam.com/video/lDsz2maaZEo/v-deo.html

    • @herrkunde6941
      @herrkunde6941 Рік тому +1

      @@ProjectPhysX In real time even! Incorporating volume forces like gravity seems pretty daunting... I would be really grateful for some tips: I am trying to implement a 2D thermal LBM in Python using the JAX library, with the hope of later getting sensitivities that i can use to optimize a simple 2D heat exchanger geometry. Do you think it is possible to mask a solid part of the domain so that only heat conduction is modeled via LBM there, without resorting to a second model?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      @@herrkunde6941 I'm not sure how well thermal LBM is suitable für solids, or if a second model is required. There has to be a solution for this in literature already, especially for heat exchanger simulations. Let me know if you find something!

    • @herrkunde6941
      @herrkunde6941 Рік тому

      @@ProjectPhysX I found something! You basically just define the relaxation time locally for the fluid and the solid, and set the velocity in the solid to 0, nothing else necessary. It gives pretty accurate results too.

    • @bryangohmppac6417
      @bryangohmppac6417 6 місяців тому

      @@ProjectPhysXregarding the thermal convection simulation, how do you calculate the Nusselt number? Do you calculate it directly by the normal derivative or is there any specific formula in general such as the momentum exchange algorithm to calculate lift and drag force

  • @zackazuki
    @zackazuki 5 місяців тому +1

    I can only imagine the rendering time and processing power it took to make these videos

    • @ProjectPhysX
      @ProjectPhysX  5 місяців тому +1

      Actually not that much - see the annotations in th video. Simulation runtime is in the order of hours, and all these simulations were perfromed on single GPU servers.

  • @boatingcow
    @boatingcow 8 місяців тому +1

    Amazing work! I wonder if you (or anyone else) already made a precompiled version, (preferably for Windows) for those of us not so comfortable with C++?

    • @ProjectPhysX
      @ProjectPhysX  8 місяців тому +1

      The simulations setups are written directly in C++, which gives the full C++ feature set for automation of simulation rows and data evaluation, without cumbersome interpretation of a separate script language and having to write huge raw data files to the hard drive. The flipside of this is that the code has to be re-compiled for each new setup, so a pre-compiled version does not make sense apart from benchmarks.
      I've thought about a precompiled version many times, but always concluded it's not worth the large effort of adding script translation, for in the end much worse options to design complicated setups with embedded data evaluation. Since I didn't use any large external libraries, compiling is very quick - about 5 seconds for the entire code - and I've doubled down on the C++ option. I made compiling as simple as possible: github.com/ProjectPhysX/FluidX3D/blob/master/DOCUMENTATION.md#2-compiling-the-source-code
      So unfortualately there is no way around learning some C++. The basics are enough though, you don't need fancy stuff like inheritance, standard library, templates or whatever. I can only recommend learning C++, it's a very fast language and might even be beneficial to your future career!

    • @boatingcow
      @boatingcow 8 місяців тому +1

      Thanks for the explanation. I’m familiar with C myself, so reading up on C++ shouldn’t be too much of a stretch. It would be great to see this one day with a precompiled UI and an embedded JIT compiler for the user code, then it might be possible to deliver as a plugin perhaps like the Grasshopper/Rhino3D workflow. Again, great work!

  • @MonsterJuiced
    @MonsterJuiced Рік тому +3

    Wow you are very generous to do this. When you started GPU programming, how long did it take you to reach this moment of release?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +7

      I started programming in 2014, and OpenCL GPU programming in 2016. It's been 7 years already!

    • @MonsterJuiced
      @MonsterJuiced Рік тому +1

      @ProjectPhysX my god, wow. I'm astonished at your accomplishment here. It's a shame the industry didn't have the tools there for you already. A lot of these things, like FLIP fluid sims all tend to be CPU focused for some reason. It would surely be a good thing if this tool could be implemented into blender3d for example and game engines since it's GPU and efficiency focused.

  • @Cullol
    @Cullol Рік тому

    Brul you done a lot of things forreal. I don't understand much,i only know a little bit of GLSL. But nice to see what could be done with the most powerful GPU's in the world.

  • @crownvictoryfive6374
    @crownvictoryfive6374 3 місяці тому +1

    Just need a $4,000,000 graphics card and a copy of this program.

    • @ProjectPhysX
      @ProjectPhysX  3 місяці тому

      Any gaming GPU is fine! FluidX3D works on all GeForce, Radeon and Arc cards, and also on Apple silicon.
      If you want to go big, snag 4 Tesla P40 24GB off eBay and you have a giant 96GB simulation rig for under $1k.
      Get a copy of FluidX3D here: github.com/ProjectPhysX/FluidX3D
      (it's free, yes the full version of the program)

  • @denysrohachuk6338
    @denysrohachuk6338 Рік тому +3

    The new era keeps coming and coming, but we still don't know how to finally start it😂❤

  • @MenkoDany
    @MenkoDany Рік тому +1

    Beautiful intro!

  • @GatewaySpace
    @GatewaySpace Рік тому +13

    Do you think we could all start using this in the near future? Could it be ported as a water simulation add-on for Blender? That would be INSANE, you'd get a ton of attention!

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +10

      You can use the software right now, it's on GitHub: github.com/ProjectPhysX/FluidX3D
      No Blender addon unfortunately; it's a standalone software with rendering embedded in OpenCL. Data export for Blender rendering would slow it down *a lot*.

    • @GatewaySpace
      @GatewaySpace Рік тому +1

      @@ProjectPhysX does it work on MacOS if I compile it?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +5

      @@GatewaySpace yes! Change the compile script here for macOS: github.com/ProjectPhysX/FluidX3D/blob/master/make.sh#L9

    • @GatewaySpace
      @GatewaySpace Рік тому +1

      @@ProjectPhysX thanks! Last question, how do you go about actually rendering the simulations? Can the cache be exported and imported into, say, Blender?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      @@GatewaySpace I use my own rendering engine, written in OpenCL. This way I can pause the simulation, render a frame directly from VRAM and store it on the hard drive, and continue the simulation. No data movement happens except rendered frames.

  • @laziokhadka7377
    @laziokhadka7377 6 місяців тому +1

    Awesome can you do tutorial about loading Stl file ,setting boundary conditions and post process result

    • @ProjectPhysX
      @ProjectPhysX  6 місяців тому

      Loading stl files: github.com/ProjectPhysX/FluidX3D/blob/master/DOCUMENTATION.md#loading-stl-files
      Boundary conditions: github.com/ProjectPhysX/FluidX3D/blob/master/DOCUMENTATION.md#initial-and-boundary-conditions
      Video rendering: github.com/ProjectPhysX/FluidX3D/blob/master/DOCUMENTATION.md#video-rendering

  • @ashamefulgamer1578
    @ashamefulgamer1578 Рік тому

    Borno is gon look craaaaazy now

  • @JJose-22
    @JJose-22 2 місяці тому +2

    Hi im working on some voxelised models or voxel based models that i would like to run fluid flow and heat exchange simulations on, does Fluidx3d work with openvdb?

    • @ProjectPhysX
      @ProjectPhysX  2 місяці тому +1

      OpenVDB is not supported, but you can load triangle meshes from binary .stl files, and FluidX3D will voxelize them. If you're experienced in coding, you can add a load function for OpenVDB format into the code yourself!

  • @CornisPopped
    @CornisPopped 9 місяців тому +1

    This is amazing! What would you recommend to a new hobbyist on making a simple 2D CFD program?

    • @ProjectPhysX
      @ProjectPhysX  9 місяців тому

      In terms of writing such a program yourself? I can recommend C++, it's difficult to learn but the payoff is huge! And for numerical methods, Lattice Boltzmann is actually quite simple, you can implement it in 100 lines.

  • @Muzzino
    @Muzzino Рік тому +1

    Crazy!

  • @nutzeeer
    @nutzeeer Рік тому +2

    this is open source?? awesome!

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +5

      No, it's source-available for no-cost non-commercial use. Like open-source, the source code is available and it's free of charge to use/modify/redistribute, but commercial and military use are not allowed.
      This restriction in usage (forbidding commercial/military applications) is not conform with the "open-source" definition, and "source-available" is the correct technical term.

    • @dorianvincent2101
      @dorianvincent2101 Рік тому +1

      @@ProjectPhysX it makes me think about something, does it mean that we can use it to build a racing car to show on youtube ? (Not for racing in categories, just racing for fun!)

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      @@dorianvincent2101 yes, use for such hobby projects is ok!

    • @dorianvincent2101
      @dorianvincent2101 Рік тому +1

      @@ProjectPhysX awesome! :)

  • @deutchecheems7678
    @deutchecheems7678 Рік тому +1

    I know that as soon as I open such an image on the PC it explodes... Imagine doing something like that

  • @jmd1743
    @jmd1743 Рік тому

    I've been kicking the can of the concept of mine that involves a server case that's mean to water cooling. The kicker would be a narrow air intake "slot" that goes from the left to the right side of the front panel of the case. The idea is that air would be pulled into the case with the air making a 90 degree turn to be pulled through PC liquid cooling radiators before making another 90 degree turn to be ejected out of the rear of the case.
    I want compare the airflow of my concept to say simply bolting the radiator & it's fans onto the front panel of the case. I'll be sure to look into your software.

  • @matteopiccioni196
    @matteopiccioni196 Рік тому +2

    Very very interesting. But from what I know about LBM scheme is that is not suitable for unstructured grid, how did you manage to apply LBM to this model? What kind of mesh did you use here

    • @ProjectPhysX
      @ProjectPhysX  Рік тому

      I'm using a Cartesian grid too, only with super high resolution, billions of cells. The conversion from triangle meshes (.stl files) to cubic grid cells works with a fast solid voxelization algorithm on GPU.

    • @matteopiccioni196
      @matteopiccioni196 Рік тому

      @@ProjectPhysX absurd and wonderful, I know the voxelization algorithm, I think it is used in blender too for immages rendering purposes.

  • @zolazar6928
    @zolazar6928 Рік тому +1

    Wow! I don't understand anything that's going on and all these big words are confusing. I'm just here because this sh*t looks cool.

  • @holthuizenoemoet591
    @holthuizenoemoet591 Рік тому +2

    Amazing to see how cross platform this is, how did you get your hands on those AMD MI200 GPUs?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому

      I asked at Jülich Supercomputing Centre and they granted me access :)

  • @ericshin121
    @ericshin121 Рік тому +1

    Nature: Look what they (computers) need just to mimic a fraction of my power

  • @Blue-op6qv
    @Blue-op6qv Рік тому +2

    Yoo, the software is amazing, how do you manage to record/save the fluids results tho?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +2

      Either as rendered video frames (managable amount of data, in the order of 10GB of image files for a video), or by storing the volumetric data as binary .vtk files to the hard drive (but then a single frame can be 120GB, which becomes difficult to handle).

    • @Blue-op6qv
      @Blue-op6qv Рік тому +2

      @@ProjectPhysX thank you!! legend

  • @doorbell8132
    @doorbell8132 Рік тому

    Now we’ll finally be able to calculate the aerodynamics of a cow

  • @hlufty
    @hlufty Рік тому +1

    you can make aerodynamics of cow with this one

  • @alphaindustries5775
    @alphaindustries5775 16 днів тому

    imagine this solver with and simple easy to use GUI, i would spend every day playing around with it.
    sadly I have no clue how to use cfd software and I dont want to be spending a couple of hours modeling and meshing something for just fun

  • @bakersbread104
    @bakersbread104 5 місяців тому +1

    That's insane. Your able to do this so quickly because its running on a gpu? Why are gpu's so much better than cpus? Or is the LBM just much cheaper to solve compared to Navier-stokes stuff?

    • @ProjectPhysX
      @ProjectPhysX  5 місяців тому

      The key is the combination of the LBM algorithm/solver running on GPUs. LBM is an alternative equivalent formulation of Navier-Stokes that allows to explicitly compute the next time step for each grid cell independently. No matrix equation has to be inverted and solved, like with more traditional FVM Navier-Stokes solvers. LBM just loads some numbers from VRAM, does very little computation (BGK collision operator), and writes the numbers back to memory in swapped locations (streaming). GPUs can do this so much faster because their memory bandwidth is ~10x faster than that of CPUs, and on top they only have a shallower [registers, L1 cache, L2, VRAM] memory hierarchy instead of [registers, L1, L2, L3, RAM]. This makes it even faster as LBM plows over all of memory in every time step and caches are only an obstacle in this case.
      In the past LBM has not been popular though, because it's memory footprint of ~344 Bytes/cell meant you could only do 3 Million cells per GB of VRAM - and GPUs maxed out at 2-4GB. Such small simulations were insufficient for real world use cases.
      In my PhD I found two optimizations to reduce memory footprint to 55 Bytes/cell without reduction of overall accuracy, allowing 19 Million cells per GB. And today GPUs typically have 8-24GB, going up to 192GB on data-center. That's 150M cells already on cheap 8GB cards and 3.6 Billion cells on 192GB MI300X/B100.
      Details here: github.com/ProjectPhysX/FluidX3D#vram-footprint
      The last trick is that I implemented multi-GPU, allowing to pool VRAM of as many GPUs together as are installed in a PC/server. That allows for cheap builds like 4x P40, for 96GB VRAM for $700, or super large simulations on big expensive GPU servers. It's even possible to "SLI" different AMD/Intel/Nvidia GPUs together, as long as they have similar VRAM capacity and bandwidth.
      Details: github.com/ProjectPhysX/FluidX3D#multi-GPU

    • @bakersbread104
      @bakersbread104 3 місяці тому

      @@ProjectPhysXso follow-up question. A guy in my lab was just showing us stuff on how he’s trying to reduce writing time by doing this or that with probes and such. Can you tell me about the details of writing all this data to memory? I assume that is included in the time you mention because no way you’re saving all these billions point snapshots on vram right? Do you just use ssd’s or something or how do you have some special writing considerations?

  • @SHOHOB2000
    @SHOHOB2000 Рік тому +3

    This is astonishing! you sir are unleashing the full potential of GPUs in CFD simulations
    Can this software calculate lift - drag - visualize velocity / pressure - streamlines etc.?
    Also I wanted to know your opinion on something. I am a student responsible for CFD simulations in my graduation project, and my pc struggles with 1-2 million cells simulations
    I can easily get my hands on 4 GTX 1070 GPUs with risers. Do you think this can work? or it has to be A100 / H100 💸💸💸😂
    Thanks in advance :)) and also thanks for this amazing software!

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +2

      It can compute lift/drag, but so far the forces are not very accurate in the turbulent regime (too large by about a factor 2). I'm still working on more accurate boundary treatment. It can visualize streamlines and velocity, and also pressure on surfaces.
      FluidX3D works multi-GPU, and it does not care about what model of GPU as long as it's a lot of (combined) VRAM capacity and fast VRAM. 4x GTX 1070 8GB is fine, that will do ~600 million cells. Have fun!

    • @SHOHOB2000
      @SHOHOB2000 Рік тому +1

      @@ProjectPhysX
      WOWW over 500 million cells that is HUGE
      I definitely will use it even if forces are not 100% accurate, the visualizations can help see flow separation, swirls, wake behind parts, see where I can improve
      I PROMISE if I managed to do it I WILL inform you so you can watch it on my channel although I might take time to learn FluidX3D / university consumes most my time
      thanks so much for the nice response. Sincerely ❤❤

  • @igamewhenimbored7696
    @igamewhenimbored7696 Рік тому +1

    Didnt someone use this software to show the aerodynamics of a cow?

  • @JustinKoenigSilica
    @JustinKoenigSilica Місяць тому +1

    can it do MRF and multiple liquid phases (i.e. oil and water)?

    • @ProjectPhysX
      @ProjectPhysX  Місяць тому

      @@JustinKoenigSilica no, it's single-phase only, but with optional free surface extension (where only the liquid phase + surface tension are modeled and gas phase is ignored).

  • @byroneggimann8123
    @byroneggimann8123 Рік тому +1

    I say next you put a cow in a formula 1 car to see the effects

  • @compassft
    @compassft 8 місяців тому +1

    I have read this is a cfd solver based on the lattice boltzmann method...I am not very expert....can it be used to simulate free surfaces, multiphase, etc..or is it valid only for 1 medium flows? Thank you

    • @ProjectPhysX
      @ProjectPhysX  7 місяців тому +1

      It can only do single-phase, with optionally free-surface. Free-surface simulations only simulate the liquid phase, not the gas phase.

  • @wiserdivisor
    @wiserdivisor Рік тому +2

    Please share a megalink (or any other storage solution) of the original uncompressed video!

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      Is there a free platform for such large files?
      Playing back the uncompressed videos crashes my gaming PC; 4K60 bitrate is about 750 Mbit/s.

    • @wiserdivisor
      @wiserdivisor Рік тому +2

      @@ProjectPhysX Sounds like it'll need to be torrented, but then again if it's a 100 GB for each second of video, it'll be too big to download !
      And if your gaming PC falls into a coma just trying to run it, I can't imagine how my little Dell laptop will survive such an ordeal.
      Anyway, cool video Dr. Lehmann. You make me want to study CFD :)

  • @Nimmm03
    @Nimmm03 Рік тому +1

    Nice, I watched the entire thing in 144p

  • @jorbedo
    @jorbedo Рік тому +1

    Dr. Lehman, it is possible to change the Q-criterion isosurface opacity to different transparency levels?, I would like to superimpose or to compose everything with different levels of transparency in premiere. For future updates it is possible to slice the Q-criterion isosurface (To add a Boolean box inside the volume?). I tried @SLGY helicopter STL animation but I got many errors (The github discussion: Moving objects and interaction with airflow #42, any revisions to that?) TIA.

    • @ProjectPhysX
      @ProjectPhysX  Рік тому

      With a small code modification, you can make the background of exported images transparent for later overlay in video editing software: github.com/ProjectPhysX/FluidX3D/issues/24
      I'm currently also experimenting with semi-transparent rendering. This is difficult, because the order in which grid cells are drawn is moreless random. But I think I have figured out order independent transparency today...

    • @jorbedo
      @jorbedo Рік тому +1

      @@ProjectPhysX Got it, thanks, I will try it.

  • @ThalassicOddity
    @ThalassicOddity Рік тому

    omg this is crazy.

  • @Givan-
    @Givan- Рік тому +1

    How did I see the X-Wing coming

  • @ezdeezytube
    @ezdeezytube 3 місяці тому +1

    Has anyone computed the flow around a cow yet?

    • @ProjectPhysX
      @ProjectPhysX  3 місяці тому

      Of course, it's the most aerodynamic shape in the universe.
      ua-cam.com/video/VyxMZ2vS3dI/v-deo.html

  • @SB3_01
    @SB3_01 Рік тому +3

    How accurate is this CFD code to real life experiments ?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +3

      As accurate as it gets with CFD. See some validation setups here: www.researchgate.net/publication/362275548_Accuracy_and_performance_of_the_lattice_Boltzmann_method_with_64-bit_32-bit_and_customized_16-bit_number_formats

  • @supergreatsuper
    @supergreatsuper Рік тому +1

    Do you have any recommendations for where to learn GPU programming? Ideally for scripts I can run on my personal computer (more general answers also appreciated).

  • @keanamrazek3745
    @keanamrazek3745 Рік тому +3

    How do you guys do these renderings of the results? Looks incredible!

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +11

      With my own rendering engine implemented in OpenCL. Source code is in the GitHub repository: github.com/ProjectPhysX/FluidX3D/blob/master/src/kernel.cpp
      PS: It's just me, I wrote this software solo ;)

    • @keanamrazek3745
      @keanamrazek3745 Рік тому +4

      @@ProjectPhysX you legend🥳thank you!!

    • @jorbedo
      @jorbedo Рік тому +1

      @@ProjectPhysX Thank you CFD Sensei

    • @jorbedo
      @jorbedo Рік тому +2

      @@ProjectPhysX Dr. how to render the object as a solid instead of wireframe, possible to change object color? Any option to add vertex shading to the object to capture the pressures around it? Thanks a lot for your time!

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      @@jorbedo block-comment from here with /* github.com/ProjectPhysX/FluidX3D/blob/master/src/kernel.cpp#L2263
      and uncomment the block here by removing /* github.com/ProjectPhysX/FluidX3D/blob/master/src/kernel.cpp#L2332

  • @akshdesai04
    @akshdesai04 27 днів тому

    I want to recreate these. Can someone please provide the files for these tests?

  • @justforbusiness9753
    @justforbusiness9753 Рік тому

    we all are also going through this

  • @rendermanpro
    @rendermanpro Рік тому +1

    Low input bitrate and high compression, and youtube compression on top - killing whole idea. I would reupload in better quality. It's like get a Ferrari and put wheels from bicycle on it :) I would remake video at 200mbit bitrate and re-upload.

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +2

      Even if I upload at 200MBit/s, UA-cam internally compresses it and the detail is lost anyways.

  • @stavrospantopoulos2620
    @stavrospantopoulos2620 Рік тому +1

    Hello, is it possible with FluidX3D to simulate in molecular scale or is it focused only on macro-scale?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +3

      Lattice Boltzmann is meso-scale, in between molecular and continuum. Instead of individual molecules, populations/groups of molecules are modeled as the "density distribution function".
      In practice, the length scale is not really important, as long as it's larger than molecular scale. All that matters is the Reynolds number, and there LBM offers the full range from about Re=0.001-100M. The simulation provides about 3 orders of magnitude in legts scale, so if you simulate 1m³ of air you can resolve down to 1mm³, if the box is 1km³ then the smallest cell size is 1m³.

  • @simpilot001
    @simpilot001 8 місяців тому +1

    Just curious, I’d there a gui for this?

    • @ProjectPhysX
      @ProjectPhysX  8 місяців тому

      Setup scripts are written as C++ functions, but once compiled (~5 seconds) there is an interactive graphics mode to fly the camera around while the simulation is running. See the documentation for details: github.com/ProjectPhysX/FluidX3D/blob/master/DOCUMENTATION.md

  • @sunoncream1118
    @sunoncream1118 3 місяці тому +1

    tutorial to instal somewhere?

    • @ProjectPhysX
      @ProjectPhysX  3 місяці тому

      Here you go!
      github.com/ProjectPhysX/FluidX3D/blob/master/DOCUMENTATION.md

  • @danniboi7490
    @danniboi7490 Рік тому +1

    @BeamNG figure out a way to implement this or something similar

  • @checkoutmyyoutubepage
    @checkoutmyyoutubepage Рік тому

    Trippy. Would love to see stuff like this in music videos. Like stuff Kraftwerk shows.

  • @Loogys
    @Loogys Рік тому +1

    What kind of computer do you use? Laptop or a PC or Mac?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому

      I started this project with a Windows 10 laptop (Lenovo Y50-70, i7-4720HQ, 16GB RAM, GTX 960M 4GB). Since 2018 I'm mostly using a Windows 10 PC (i7-8700K, 16GB RAM, Titan Xp 12GB). Still plenty fast, so I won't upgrade hardware anytime soon. But I'm planning to switch to Linux; can't have the OS take up >3GB RAM on idle and bombard me with ads.

  • @warguy6474
    @warguy6474 Рік тому

    how would i go about learning more about simulations? Im currently a 2nd year computer engineering major

  • @emeneensj445
    @emeneensj445 Рік тому +1

    What exactly is this? Is it better, similar or different then sims like ember gen and Houdini? And how come in the water sim the water dips unnaturally? Also can this work for film? Like can you make it look realistic and implement in blender or something? And if so, is this free or paid for? Either way, I think many would pay for this software

    • @ProjectPhysX
      @ProjectPhysX  Рік тому

      It's a physically accurate computational fluid dynamics software for science/engineering applications, with integrated real-time rendering capabilities. The solver is >100x faster than commercial CFD software, and even significantly faster than all of the inaccurate VFX solvers like EmberGen/Houdini.
      It's a standalone software, so there is no blender integration. And it's free for non-commercial use in science/education/hobby, with the source code published on GitHub ("source-available no-cost non-commercial" license). Not "open-source" though, as commercial/military use isn't allowed by the license.
      I will eventually also open it up to (paid) commercial use with a 2nd commercial license, targeted towards companies.

    • @jorbedo
      @jorbedo Рік тому +1

      He bypass the creation of Terabytes of data and IO transfers to render on external applications, to be able to share it with 3d apps he could loose the realtime ability. Maybe this not the solution that you are looking for.

    • @emeneensj445
      @emeneensj445 Рік тому

      @@ProjectPhysX I don’t expect you to have an answer, but is there any physically accurate vfx water sim? Maybe real flow? Or any program able to achieve it? (that you know of)

  • @carloszepeda1963
    @carloszepeda1963 Рік тому +1

    POV: you are Adrian Newey

  • @petterlarsson7257
    @petterlarsson7257 6 місяців тому +1

    youtube compression tutorial

  • @user-uw1gr2ib6v
    @user-uw1gr2ib6v Рік тому +1

    how much bitrate is required to display this video.. maybe 200mbps?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому

      The original in 4K is about 750 MBit/s, enough to choke my computer :)

  • @Juraj-z1e
    @Juraj-z1e Місяць тому

    pls can you make RB17 animation ? THanks

  • @zergidrom4572
    @zergidrom4572 Рік тому +1

    Now make an addon for blender and simply become a millionaire

  • @user-sv7ni8zf1l
    @user-sv7ni8zf1l Рік тому +2

    Bro has nasa computer

  • @mustaphaben2921
    @mustaphaben2921 Рік тому

    Can I make a simulation to build drag less eFoil board

  • @nutzeeer
    @nutzeeer Рік тому +1

    can shapes be vector or math based so they are smooth?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      Geometries can be loaded from vector format (.stl files) but they are voxelized for the simulation. For smooth surfaces, a very fine grid is needed.

  • @Peteboi64932
    @Peteboi64932 Рік тому +1

    Me after I stub my toe:

  • @baL88537
    @baL88537 Рік тому +1

    😳👍🏻

  • @vassilisbakalas3423
    @vassilisbakalas3423 6 місяців тому +1

    are all these DNS?

    • @ProjectPhysX
      @ProjectPhysX  6 місяців тому

      Very close, DNS-LES, super high resolution LBM + Smagorinsky-Lilly subgrid model. Only the raindrop splashing is fully DNS.

  • @dannya1854
    @dannya1854 Рік тому +1

    Did you make this with a profit motive?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +5

      No, I'm not doing it for the money. I have 3 main motives:
      1. I originally wrote this software as a tool to get the impossible simulation task for my physics PhD done. I was very successful, and after my PhD figured this powerful tool would be beneficial to many other researchers as well, especially since it reduces hardware cost by about 100x due to the lower memory footprint, and electricity cost by about 2000x due to the much better efficiency. My main motive is to make super fast CFD simulations accessible to everyone. Free of charge, super fast, compatible with any hardware and operating system. That's why I decided to publish the source code with a no-cost non-commercial source-available license. I made this software free of charge to everyone, only excluding commercial and military use.
      2. I just love programming and making computers do useful things. And working on this software taught me a lot.
      3. My University didn't have the money for the super expensive licenses for all of the dog-slow commercial CFD software. These companies are greedy, and since they also sell their software as a service with hourly billing, they have no motivation to make it any faster. I have no regrets to make them lose customers to a better and free alternative.
      That said, I eventually want to open up the tool for commercial use too, in exchange for a license fee. Companies who make huge revenue with such software can also pay for it. For non-commercial use though, it will always remain free of charge and unlimited.

  • @nickg00
    @nickg00 Рік тому +1

    Is this good with internal flows?

    • @ProjectPhysX
      @ProjectPhysX  Рік тому

      Yes, as long as the setup fits well in a cuboid domain.

  • @panillion
    @panillion Рік тому +2

    FUUUUUTUUUUUUREEEEEEEEEEEE

  • @delch016
    @delch016 Рік тому

    Sooo…. A cow isn‘t a sphere?

  • @Cogsworth2234
    @Cogsworth2234 Рік тому

    Aerodynamics of cow

  • @Touchgrassplz
    @Touchgrassplz Рік тому

    I came here from the cow.

  • @jorbedo
    @jorbedo Рік тому +1

    4x RX 7900 XTX 24Gb (x4=96Gb Vram - 240 FP32 TFLOPs for $4k? better than 1x Instinct MI250 64Gb with 1 GCD $15,000? If only AMD could release a RX7900 with 32GB....

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      A better option would be 4x Instinct MI60 32GB ($600 each on ebay), they are both faster and cheaper than the 7900 XTX.

    • @jorbedo
      @jorbedo Рік тому +1

      @@ProjectPhysXPlanning to get a Asus MB with 7 pci slots.... Q. Why is faster when you get 14 FP32 tflops vs 60 tflops on the RX? Only because the memory?. Thanks

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      @@jorbedo the TFlops are completely irrelevant for CFD. The algorithm operates in the bandwidth-limit. Performance is directly proportional to VRAM bandwidth!

    • @jorbedo
      @jorbedo Рік тому +2

      ​@@ProjectPhysX That means is better to configure (4) Mi60 with the 4 slot Infinity Fabric than letting communicate via the PCIe, in case a 16x/1x/1x/1x motherboards? Those cards are way ahead of their time, o 200 GB/s GPU peer-to-peer bandwidth (That's what you were talking about), PCIe 4.0, 32GB, Infinity Fabric... Wow!, Those (4) Mi60's are comparable to a Mi250 with 2 units and 128Gb (Maybe more like 75% performance)? Now we need a tutorial on how to deploy it on Ubuntu. thanks for taking the time to respond.

    • @ProjectPhysX
      @ProjectPhysX  Рік тому +1

      @@jorbedo InfinityFabric is useless unfortunately, AMD's driver for it is broken and segfaults. Communication happens over PCIe, so ideally you want a mainboard with 4x PCIe x16 4.0 slots. Performance will be very similar to Radeon VII, which is already 75-80% of MI200 performance.
      I'll cover Linux deployment in my tutorial.

  • @NaimSonkan
    @NaimSonkan 14 днів тому

    Jones Ronald Martinez Scott Hernandez Shirley

  • @looooool3145
    @looooool3145 2 місяці тому +1

    how did you become so smart? what do you eat? any tips? i am similar age to you, but dumb.

    • @ProjectPhysX
      @ProjectPhysX  2 місяці тому +1

      @@looooool3145 Through a lot of learning and hard work. Through not taking the easy path in life. Through trying, struggling, faliling, and trying again. I'll spare you the painful details.
      As for what I eat? Potatoes of course, I'm a German. And I'm vegetarian. No animals have to die for me, it's healthy, there is huge environmental benefits, and it's sooo much cheaper. Win-win-win-win.
      My tip: Find something that fascinates you. Understand how things work. Learn it. Solve problems. Become good at it. Be patient, learning is hard. Get back up when you fall down. The best investment you can make today is to educate yourself, so that your future self will take better decisions. That is what brings wealth.

    • @frankdelahue9761
      @frankdelahue9761 8 днів тому

      ​@@ProjectPhysXDo you use smart drugs, nootropics?

    • @frankdelahue9761
      @frankdelahue9761 8 днів тому

      ​@@ProjectPhysXLike Modafinil?

  • @fabiofanf3e813
    @fabiofanf3e813 Рік тому

    how to turn your pc into a atomic bomb:

  • @Nick_fb
    @Nick_fb Рік тому

    Realtime? Huh. Guess I don't need to bother with my realtime efforts. Yours way eclipse mine. Rip a yr of work.