Skip to content
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

Smokeview particle colorbar #3767

Closed
drjfloyd opened this issue Apr 6, 2016 · 10 comments
Closed

Smokeview particle colorbar #3767

drjfloyd opened this issue Apr 6, 2016 · 10 comments
Assignees

Comments

@drjfloyd
Copy link
Contributor

drjfloyd commented Apr 6, 2016

Running the case in issue 3765 with the current source and using the just released smokeview 6.3.6. Debug in the code shows I am getting reasonable particle diameters, but when I load the particles in smokeview I get diameters colored from -1E9 to 1E9. The same happens for particle temperature.

image

@gforney
Copy link
Contributor

gforney commented Apr 6, 2016

I'll take a look at it

@mcgratta
Copy link
Contributor

mcgratta commented Apr 6, 2016

I noticed this as well when working this case. I thought that the crazy numbers were related to the fact that the case was failing due to numerical problems. I also loaded the latest Smokeview, which behaved differently but in a way that I could not nail down. In other words, I would have to go back and reinstall the older version.

I did notice that things worked well when I set the particle bounds, and then loaded the particle file. However, if I load the particle file, and then set the bounds, I do not get the right colors. I suspect that the two quantities (droplet temperature and droplet diameter) have similar value ranges, and one might be getting confused with the other.

@gforney
Copy link
Contributor

gforney commented Apr 6, 2016

this problem is related to there being no particles in a number of the meshes. If you load only meshes 2, 3, 4, 5, 6, 11, 12 and 14 (all others have no particles). you'll see sensible bounds. sensible with a caveat - now I am not sure they are being computed correctly

is it possible to set up an fds case where you predefine particles values - say particles in mesh 1 are initialized to 100 C and particles in mesh 2 are defined to 200 C. the particle code in smokeview is complicated. It would be nice verify that it is computing the right bounds.

@mcgratta
Copy link
Contributor

mcgratta commented Apr 6, 2016

I will do this for you. Jason is working various other issues. K

@mcgratta
Copy link
Contributor

mcgratta commented Apr 7, 2016

The following case has particles in meshes 1-7 at temperatures of 100-700 C, respectively. The 8th mesh is empty. The particles fall to the floor so that we can check MPI communication as well.

&HEAD CHID='particle_color' /
&MESH IJK=10,10,10, XB=0.0,1.0,0.0,1.0,0.0,1.0, MULT_ID='mesh' /
&MULT ID='mesh', DX=1.0, DY=1.0, DZ=1.0, I_UPPER=1, J_UPPER=0, K_UPPER=3 /  8 meshes
&TIME T_END=3. /
&MATL ID='stuff', DENSITY=1000., CONDUCTIVITY=0.1, SPECIFIC_HEAT=1. /
&PART ID='drops_100', SAMPLING_FACTOR=1, SURF_ID='T_100', INITIAL_TEMPERATURE=100., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_200', SAMPLING_FACTOR=1, SURF_ID='T_200', INITIAL_TEMPERATURE=200., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_300', SAMPLING_FACTOR=1, SURF_ID='T_300', INITIAL_TEMPERATURE=300., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_400', SAMPLING_FACTOR=1, SURF_ID='T_400', INITIAL_TEMPERATURE=400., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_500', SAMPLING_FACTOR=1, SURF_ID='T_500', INITIAL_TEMPERATURE=500., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_600', SAMPLING_FACTOR=1, SURF_ID='T_600', INITIAL_TEMPERATURE=600., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_700', SAMPLING_FACTOR=1, SURF_ID='T_700', INITIAL_TEMPERATURE=700., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&SURF ID='T_100', GEOMETRY='SPHERICAL', RADIUS=0.001, TMP_FRONT=100., TMP_INNER=100., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0.  /
&SURF ID='T_200', GEOMETRY='SPHERICAL', RADIUS=0.002, TMP_FRONT=200., TMP_INNER=200., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0.  /
&SURF ID='T_300', GEOMETRY='SPHERICAL', RADIUS=0.003, TMP_FRONT=300., TMP_INNER=300., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0.  /
&SURF ID='T_400', GEOMETRY='SPHERICAL', RADIUS=0.004, TMP_FRONT=400., TMP_INNER=400., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0.  /
&SURF ID='T_500', GEOMETRY='SPHERICAL', RADIUS=0.005, TMP_FRONT=500., TMP_INNER=500., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0.  /
&SURF ID='T_600', GEOMETRY='SPHERICAL', RADIUS=0.006, TMP_FRONT=600., TMP_INNER=600., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0.  /
&SURF ID='T_700', GEOMETRY='SPHERICAL', RADIUS=0.007, TMP_FRONT=700., TMP_INNER=700., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0.  /
&INIT XB=0.4,0.6,0.4,0.6,0.4,0.6, N_PARTICLES=10, PART_ID='drops_100' /
&INIT XB=1.4,1.6,0.4,0.6,0.4,0.6, N_PARTICLES=10, PART_ID='drops_200' /
&INIT XB=0.4,0.6,0.4,0.6,1.4,1.6, N_PARTICLES=10, PART_ID='drops_300' /
&INIT XB=1.4,1.6,0.4,0.6,1.4,1.6, N_PARTICLES=10, PART_ID='drops_400' /
&INIT XB=0.4,0.6,0.4,0.6,2.4,2.6, N_PARTICLES=10, PART_ID='drops_500' /
&INIT XB=1.4,1.6,0.4,0.6,2.4,2.6, N_PARTICLES=10, PART_ID='drops_600' /
&INIT XB=0.4,0.6,0.4,0.6,3.4,3.6, N_PARTICLES=10, PART_ID='drops_700' /
&TAIL /

@gforney
Copy link
Contributor

gforney commented Apr 7, 2016

thanks. I'll look at it with smokeview

On Thu, Apr 7, 2016 at 11:58 AM, Kevin McGrattan notifications@github.com
wrote:

The following case has particles in meshes 1-7 at temperatures of 100-700
C, respectively. The 8th mesh is empty. The particles fall to the floor so
that we can check MPI communication as well.

&HEAD CHID='particle_color' /
&MESH IJK=10,10,10, XB=0.0,1.0,0.0,1.0,0.0,1.0, MULT_ID='mesh' /
&MULT ID='mesh', DX=1.0, DY=1.0, DZ=1.0, I_UPPER=1, J_UPPER=0, K_UPPER=3 / 8 meshes
&TIME T_END=3. /
&MATL ID='stuff', DENSITY=1000., CONDUCTIVITY=0.1, SPECIFIC_HEAT=1. /
&PART ID='drops_100', SAMPLING_FACTOR=1, SURF_ID='T_100', INITIAL_TEMPERATURE=100., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_200', SAMPLING_FACTOR=1, SURF_ID='T_200', INITIAL_TEMPERATURE=200., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_300', SAMPLING_FACTOR=1, SURF_ID='T_300', INITIAL_TEMPERATURE=300., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_400', SAMPLING_FACTOR=1, SURF_ID='T_400', INITIAL_TEMPERATURE=400., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_500', SAMPLING_FACTOR=1, SURF_ID='T_500', INITIAL_TEMPERATURE=500., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_600', SAMPLING_FACTOR=1, SURF_ID='T_600', INITIAL_TEMPERATURE=600., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&PART ID='drops_700', SAMPLING_FACTOR=1, SURF_ID='T_700', INITIAL_TEMPERATURE=700., QUANTITIES='PARTICLE TEMPERATURE','PARTICLE DIAMETER' /
&SURF ID='T_100', GEOMETRY='SPHERICAL', RADIUS=0.001, TMP_FRONT=100., TMP_INNER=100., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0. /
&SURF ID='T_200', GEOMETRY='SPHERICAL', RADIUS=0.002, TMP_FRONT=200., TMP_INNER=200., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0. /
&SURF ID='T_300', GEOMETRY='SPHERICAL', RADIUS=0.003, TMP_FRONT=300., TMP_INNER=300., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0. /
&SURF ID='T_400', GEOMETRY='SPHERICAL', RADIUS=0.004, TMP_FRONT=400., TMP_INNER=400., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0. /
&SURF ID='T_500', GEOMETRY='SPHERICAL', RADIUS=0.005, TMP_FRONT=500., TMP_INNER=500., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0. /
&SURF ID='T_600', GEOMETRY='SPHERICAL', RADIUS=0.006, TMP_FRONT=600., TMP_INNER=600., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0. /
&SURF ID='T_700', GEOMETRY='SPHERICAL', RADIUS=0.007, TMP_FRONT=700., TMP_INNER=700., MATL_ID='stuff', HEAT_TRANSFER_COEFFICIENT=0. /
&INIT XB=0.4,0.6,0.4,0.6,0.4,0.6, N_PARTICLES=10, PART_ID='drops_100' /
&INIT XB=1.4,1.6,0.4,0.6,0.4,0.6, N_PARTICLES=10, PART_ID='drops_200' /
&INIT XB=0.4,0.6,0.4,0.6,1.4,1.6, N_PARTICLES=10, PART_ID='drops_300' /
&INIT XB=1.4,1.6,0.4,0.6,1.4,1.6, N_PARTICLES=10, PART_ID='drops_400' /
&INIT XB=0.4,0.6,0.4,0.6,2.4,2.6, N_PARTICLES=10, PART_ID='drops_500' /
&INIT XB=1.4,1.6,0.4,0.6,2.4,2.6, N_PARTICLES=10, PART_ID='drops_600' /
&INIT XB=0.4,0.6,0.4,0.6,3.4,3.6, N_PARTICLES=10, PART_ID='drops_700' /
&TAIL /


You are receiving this because you were assigned.
Reply to this email directly or view it on GitHub
https://github.com/firemodels/fds-smv/issues/3767#issuecomment-206968905

Glenn Forney

@gforney
Copy link
Contributor

gforney commented Apr 8, 2016

update: there were problems with how particle data bounds and particle data values -> colors were computed in cases with multiple meshes. I've fixed the bounds problem and am working on getting the color mapping right.

@mcgratta
Copy link
Contributor

mcgratta commented Apr 8, 2016

Also try loading the particles, then setting the color bounds. I have found this to be a problem. If I set the color bounds first, then load the particles, things work. Also, I don't think the "reload particle file" within the change bounds dialog box is working properly. It seemed to be loading only mesh 1.

@gforney
Copy link
Contributor

gforney commented Apr 12, 2016

try smokeviews located at
https://drive.google.com/folderview?id=0B_wB1pJL2bFQc1F4cjJWY2duWTA&usp=sharing

I overhauled the way smokeview computes particle bounds and colors. basically the first time you load particles files, smokeview computes and stores (compressed) histograms of particle values. It then uses this information to compute particle bounds.

kevin - the "reload particle file" button was broken. It should be working now. let me know if you see something different.

for future reference in addition to addressing this problem I also removed code supporting for particle files produced by FDS version 4 and earlier. This cleaned things up quite a bit.

let me know if you see any problems . (there were a lot of changes, ~20 commits, so will be surprised you don't come across some hiccups!)

@mcgratta
Copy link
Contributor

I tried the case again and everything seems to work nicely. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants