[FLASH-USERS] Some questions about the new Flash.

Klaus Weide klaus at flash.uchicago.edu
Tue Sep 25 15:26:47 EDT 2012


On Tue, 25 Sep 2012, Giovanny Bernal wrote:

> 2. The viscosity Unit is available for polar coordinates (r,phi)?

The "Viscosity" unit only provides numerical values for the material 
property 'viscosity' (as scalars, meaning dynamic and/or kinematic 
viscosity), and is thus ignorant about geometry.

As in previous releases of FLASH, the actual implementation of viscous 
physics is only provided in an explicit, flux-based form in collaboration 
with a Hydro solver - using API Diffuse_visc, in the case of split Hydro.

The code in Diffuse_visc.F90 has two comments:
C1)
  ! check the geometry -- currently, only cartesian geometry is supported
C2)  
  ! check the geometry -- currently, only cartesian, 2-d cylindrical, and
  ! 1-d spherical geometry is supported

This raises the question: which of these (if any) is true?

I believe that C1 may be true in the sense that only the Cartesian 
case has originally been tested.
(However, at the Flash Center we currently do not perform any regular 
testing of the Viscosity / Diffuse_visc code.)

As for C2 - the code in Diffuse_visc has some provisions for dealing with
curvilinear coordinates. This should be considered untested and provided 
as is.  I don't know whether it works.
However, IF it works for "cartesian, 2-d cylindrical, and 1-d spherical 
geometry", I see no reason why it shouldn't work for polar (r,phi) as 
well.

Split Hydro uses routine hy_uhd_addViscousFluxes instead of Diffuse_visc.
I am not sure about the support for non-Cartesian geometries there.

We would welcome contributions of test problems, in particular in the form 
of unitTests, that would allow us to regular test these implementations 
regularly!  We do not currently have internal users of the viscosity
implementations.



> 3. In the IO_writeIntegralQuantities.F90, I had noted that when I call 
> the coordinates information for a cylindrical simulation (R,Z), the x(i) 
> coordinate (i.e., the radial coordinate) become like pi*R and not only 
> R. I don't understand why. When I call the volume in a cell (dvol), the 
> value are ok (pi*deltaX*deltaY), and the Z coordinate look ok too. The 
> problem arise only in the radial coordinate... I have missing something?

What routine call(s) do you use in your IO_writeIntegralQuantities to get 
the r(i) values?

Klaus



More information about the flash-users mailing list