-
Notifications
You must be signed in to change notification settings - Fork 638
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Symmetry breaks quickly in simple flow #13764
Comments
With a quick look. The .out file show these all have the same properties and if I add slices for specific heat, conductivity, etc. Those show identical values until temperature starts to change in which case conductivity increases with temperature. This doesn't seem to be something wrong with the functions for getting properties. |
I don't think so either. I'm just surprised at how quickly the symmetry and iso-thermal break down. Like in 3 time steps. No time step changes, no changes in geom, no obsts, no mesh boundaries. |
It also doesn't happen if one of the VENTs is the background species or both vents are the same species. Only when the two vents are A and B |
Nice clue. |
How did you apply the BG species at the VENT. I get
|
Nevermind. I know how. |
Setting |
It is still seen with just a 2 cell wide domain but not as strong &HEAD CHID='test' / &MESH IJK=8,1,4, XB=0.0,0.8,-0.001,0.001,0.2,0.6 / &TIME T_END=2,DT=0.01 / &PRES CHECK_POISSON=T / &MISC STRATIFICATION=F, NOISE=F, CONSTANT_SPECIFIC_HEAT_RATIO=T / &SPEC ID='GAS BG', MW=29, BACKGROUND=T / &SURF ID='WALL', FREE_SLIP=T, DEFAULT=.TRUE. / &SURF ID='BLOW A', VEL=-0.5, MASS_FRACTION(1)=1., SPEC_ID(1)='GAS A' / &VENT XB=0.0,0.0,-0.001,0.001,0.3,0.4, SURF_ID='BLOW A' / &OBST XB=0,0.8,-0.001,0.001,0.2,0.3/ &VENT PBX=0.8, SURF_ID='OPEN' / &SLCF PBY=0.,QUANTITY='MASS FRACTION', SPEC_ID='GAS A', CELL_CENTERED=T, VECTOR=T / &TAIL/ |
If you set |
FDS Verification: Issue #13764. New isothermal test case
On a related note, I just added a case called |
OK, I should be able to track this down. The other limiters should work too, so something is amiss. |
In the case where we have three gases, two on the inlet and one background, and all have the same MW, when I sum the limited fluxes, I do not get what I expect with |
I have a guess at what is going on. I sent some notes on Overleaf (they were not rendering correctly here on GitHub). |
I added a correction in this PR #13789 . For now, it is hidden behind the MISC flag ![]() Once we are happy with the coding, we can remove the flag. I think we just need to invoke this if N_TRACKED_SPECIES>2. |
I'll run this locally. I'd rather not commit a potential grenade because it causes problems when doing a git bisect. |
I am running the verification cases to see if something will blow up. I set the new parameter to T in the test. But I just ran the We can work on this more tomorrow. I think we need to run the idea through a series of increasingly complex cases -- multi-mesh, different gases, flux limiters, obstructions, etc. |
I think I know what is going on. I updated the notes. To maintain isothermal flow, we need to keep |
PR #13789 with the test flag set to T knocked about a dozen cases out of tolerance. Since there is no immediate crisis, I suggest we revert the change and work it over the next few weeks. That will give us time to progress from the simple cases to the complex, like |
Please do not revert. I will deal with this. I am working on the
correction. Please just leave the flag to false.
…Sent from my iPhone
On Fri, Nov 22, 2024 at 8:06 AM Kevin McGrattan ***@***.***> wrote:
PR #13789 <#13789> with the test
flag set to T knocked about a dozen cases out of tolerance. Since there is
no immediate crisis, I suggest we revert the change and work it over the
next few weeks. That will give us time to progress from the simple cases to
the complex, like couch.fds which was one of the cases that failed. In
the meantime, I want to figure out what is happening at mesh boundaries
when obstructions are created or removed This can be done using the simple
GODUNOV limiter because I think the issue there is separate. It would be
easier not to have the test code complicating things until it's ready.
—
Reply to this email directly, view it on GitHub
<#13764 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABBWXQOXWF6H6OBJOFXNO6T2B5B7PAVCNFSM6AAAAABR33IOEGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOJTHE3DQNZRGM>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
I transferred this issue to Randy. The best test case for this is in |
I made a bit of progress on this issue today. This PR #13854 is working for this test case: isothermal_3spec_const_gamma.fds.txt However, this case is single mesh. When I go to multi-mesh I end up with errors at the INTERPOLATED_BC which is what I'm working on now. |
Here is a test case. The attached case defines five species that allow for testing with the same MW and CP or varying MW and CP. Eight meshes have a two cell high gas phase domain contracting down to one cell high. Pairs of species are injected on the left at the same or varied temperature. For varying temperature comments in the input file note what the solution should be. |
This PR #13863 fixes the temperature issue at interpolated boundaries for CONSTANT_SPECIFIC_HEAT_RATIO=T (still). I will now start working the variable CP aspects using Jason's case. Another note is that these cases still require CFL_VELOCITY_NORM=1 and CFL_MAX=0.8 to stay perfectly isothermal. Here is the working input file for ![]() |
@drjfloyd Have your case working in a branch. Need to run it through firebot then I'll push it up. ![]() ![]() |
OK, thanks. I'll take a look. |
@drjfloyd I'm not sure this is something we can avoid. If I set ![]() So, this is what we get by default. If I set,
then I get this, ![]() I attribute the earlier onset of the randomness simply to the fact that the correction requires more flops and so the roundoff error accumulates a bit faster. What I can do is to automatically set I don't think it makes sense to try to improve this at the moment, as we have another idea we want to pursue that would both eliminate the need for a special correction and hopefully also speed up the whole transport algorithm. But let me know if you disagree. |
That all makes sense. I agree. |
Run this case below. It only takes a few seconds. The resulting flow should be symmetric and isothermal, but it is neither. It is worst when
CONSTANT_SPECIFIC_HEAT_RATIO=T
, but it still fails if isF
. If I remove one of theVENTs
injecting the gas, the case remains iso-thermal, but obviously not symmetric.The text was updated successfully, but these errors were encountered: