fds icon indicating copy to clipboard operation
fds copied to clipboard

Fix convergence rate for HVAC mass transport

Open rmcdermo opened this issue 8 years ago • 16 comments

Sort out issues with attached plot. I think this should be exactly O(dx), looks to be a little off that. screen shot 2016-10-03 at 3 01 27 pm

rmcdermo avatar Oct 03 '16 19:10 rmcdermo

@bmralph Ben, has this issue been fixed?

sbenkorichi avatar Sep 05 '17 14:09 sbenkorichi

The latest build of the Verification Guide still shows this behavior.

mcgratta avatar Oct 09 '18 21:10 mcgratta

I believe this is a case input problem as the ability to print duct cell quantities hasn't been coded yet. It is on my to do list...

On Tue, 9 Oct 2018, 22:08 Kevin McGrattan, [email protected] wrote:

The latest build of the Verification Guide still shows this behavior.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/firemodels/fds/issues/4374#issuecomment-428352993, or mute the thread https://github.com/notifications/unsubscribe-auth/AMm1wUFJjnzg1zXuCZHa8qoRg8f9GLDLks5ujRBlgaJpZM4KM9XB .

bmralph avatar Oct 09 '18 21:10 bmralph

Any progress on this?

mcgratta avatar Mar 15 '19 19:03 mcgratta

The first steps have started (adding in DEVC output for individual cells). I haven't taken any further. But it's moving up my to do list!

On Fri, 15 Mar 2019 at 19:04, Kevin McGrattan [email protected] wrote:

Any progress on this?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/firemodels/fds/issues/4374#issuecomment-473407196, or mute the thread https://github.com/notifications/unsubscribe-auth/AMm1wQAZQa2fcCh0MxnnPadrF7lK9kQzks5vW-7NgaJpZM4KM9XB .

bmralph avatar Mar 16 '19 16:03 bmralph

I took another look at this. Here is the L2e in the matlab script.

L2e = [L2e,sqrt(1/nc_array{i}*sum((Y(t_fds)-Y_fds).^2))]; % populates L2 error norm vector, element-by-element

If instead we divide by the number of nodes before taking the square root, then things look correct.

L2e = [L2e,sqrt((1/nc_array{i}*sum((Y(t_fds)-Y_fds).^2)))]; % populates L2 error norm vector, element-by-element

drjfloyd avatar Apr 26 '23 20:04 drjfloyd

Hard for me to see the difference. Looks like you just put extra parens inside the sqrt, no?

rmcdermo avatar Apr 26 '23 21:04 rmcdermo

The last time I looked at this (before I lost academic access to matlab and Intel compilers...), I recall believing that the problem may stem from the initialisation of the quantities in the duct cells.

From memory, I wasn't convinced that at t=0 the function down the duct was initialised as a constant gradient line from l=0 to l=1.

On Thu, 27 Apr 2023, 05:02 Randy McDermott, @.***> wrote:

Hard for me to see the difference. Looks like you just put extra parens inside the sqrt, no?

— Reply to this email directly, view it on GitHub https://github.com/firemodels/fds/issues/4374#issuecomment-1524041354, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADE3LQLJOEZ54LVEMNTWV53XDGENVANCNFSM4CRT2XAQ . You are receiving this because you were mentioned.Message ID: @.***>

bmralph avatar Apr 27 '23 06:04 bmralph

I did some calcs by hand in Excel yesterday but now when I try to repeat them I am not getting what I did before so I must have screwed something up. Never mind.

drjfloyd avatar Apr 27 '23 10:04 drjfloyd

I changed initilaization when I got qfan fully integrated. That appears to be correct. Here are the intial values in the 20 node case. With 20 nodes going from 1 to 0, the nodes should step at 0.05 with the first node having an 0.025 step to reflect the half distance to the node center.

0.975000

0.925000 0.875000 0.825000 0.775000 0.725000 0.675000 0.625000 0.575000 0.525000 0.475000 0.425000 0.375000 0.325000 0.275000 0.225000 0.175000 0.125000 0.075000 0.025000

drjfloyd avatar Apr 27 '23 11:04 drjfloyd

image

drjfloyd avatar Apr 27 '23 11:04 drjfloyd

Can you check L_infty (max error only). If that is O(dx) then we should be good.

rmcdermo avatar Apr 27 '23 13:04 rmcdermo

L_infty is O(dx^0.5)

image

drjfloyd avatar Apr 27 '23 13:04 drjfloyd

In the input files we are changing both dx and dt. Should these be run at the same dt (one good for all dx) so it is only dx that is changing?

drjfloyd avatar Apr 27 '23 13:04 drjfloyd

Might be a time issue. But there can also be an issue with the type of solution. What type of function is it? Jump solution or sinusoidal? Marcos has a book by LeVeque that discusses the low order for L_infty for jumps. He will grab it at lunch.

rmcdermo avatar Apr 27 '23 14:04 rmcdermo

Can you also just try setting the CFL to something very low, like 0.1, 0.01 and see if that makes a difference?

rmcdermo avatar Apr 27 '23 14:04 rmcdermo