IllinoisRocstar / AccelerateCFD_CE

Community Edition of AccelerateCFD platform for creating reduced order models from high fidelity CFD
Other
47 stars 17 forks source link

Using AccelerateCFD_CE with pitzDaily tutorial case #14

Open ghost opened 3 years ago

ghost commented 3 years ago

Hello, Thank you very much for this library. I have successfuly installed it on Ububtu 20.04 and run the SampleCasetutorial as per the instructions given in the README.md file. I am very new to POD method, I am trying learn about. I have tried to use this library with the pitzDaily case from OpenFOAM 7. However, the Urom field is significantly different from the U and Umean fields (I have used 10 modes which according to the plotPOD.py is sufficient).

Here is the snapshot of the U field at a t=0.3 image

And here is the snapshot of the Urom field at the same time (t=0.3): image

I have attached below the case I used in this Analysis. Note that I have used several values for the dt term in the constant/podDict (1e-5, 1e-7, 1e-8) But there is no change.

// Timestep for the reduced order model.
dt    dt [0 0 1 0 0 0 0] 1e-08;

I have followed exactly the same instructions in the README.md file of this library. In short:

# download the attached case, uncompress it, and cd to it
# Then run the following commands
pimpleFoam
podBasisCalc 10
podPrecompute
podROM 10
podFlowReconstruct
podPostProcess get_aPOD
paraFoam

I appreciate your feedback

The pitzDaily case: pitzDaily.zip

ghost commented 3 years ago

Hi Yoorthiziri,

Your ROM velocity field (Urom) looks correct, does it change over time? The velocity field (U) in the first picture, however, looks more like a mean velocity field than a snapshot of a transient simulation, if you view different timesteps in paraview is the field changing? The fields in "sampleCase/0" were taken from a case with fully developed flow, so you should see transient behavior immediately in both the FOM and ROM, such as vortices being advected downstream. Also did you use the pimpleFoam or pisoFoam solver? Try using the pisoFoam to compute the FOM, if you haven't already. BTW, FOM = full order model or "ground truth" we use to construct the reduced order model, it's the solution you get from the base OpenFOAM solver.

s1291 commented 3 years ago

@lukeaero : Thank you very much for your reply. Please find attached below the full model velocity (U) and the ROM velocity animations:

The FOM velocity (U) U_mag

The ROM velocity (Urom): Urom_mag

As you can see, The Urom field is very different from the Ufom.

ghost commented 3 years ago

Hi @s1291,

I believe I know the problem. So, the POD-ROM method, in our implementation, is intended to work with transient fields. While pimpleFoam is a transient solver, the RAS turbulence model is not generally used for transient/unsteady cases (I believe). That's why your FOM converges to a steady-state, after the initial transient from having unrealistic initial conditions (i.e. a homogeneous velocity field) dies down. If you wanted to run the Pitz case with turbulence wall-modeling, you would need either a turbulent fluctuating inlet or a more complicated turbulence model, such as LES or URANS. However, these methods generally require a finer mesh. I suggest that for this simple test case, you should assume laminar flow. That should give you a transient FOM.

The other issue is that to perform POD accurately you need a "statistically steady-state" (but still unsteady), meaning that the flow is fully developed and the flow is steady "on average". The easiest way to do this is to run the simulation for a couple flow cycles until the flow looks developed, and then use the latest timestep as the initial timestep in a new simulation.

I can give you a case file with developed fields; I just ran the simulation for a bit to reach statistically-steady state, then copied the fields to the "0" directory. Otherwise, the case is basically the same as pitzDaily. There's an Allrun file to do the FOM and ROM; otherwise you can run the commands manually.

Some quick caveats: this is a very simplified test case, so the results won't be perfect. Also, the turbulent fields are very stochastic, so you should only expect to reproduce statistically similar results. However, if you view U and Urom in paraview, you should see similar flow structures: namely, vortices being generated at the backwards-step and advecting downstream. Hope this helps!

pitzDaily2.zip

ghost commented 3 years ago

Please let me know if this solved the issue for you

Mileycyr commented 1 year ago

after podROM in avals.csv file I am getting a negative value and at final fatal error will come

Mileycyr commented 1 year ago

Screenshot 2023-06-05 172010

Mileycyr commented 1 year ago

getting negative value after podROM as mention above

Mileycyr commented 1 year ago

anyone???

Mileycyr commented 1 year ago

@tpgrunloh

Mileycyr commented 1 year ago

in case sigma meaning is snapshots ?? what if i want to do for different snapshot?