[FLASH-BUGS] 3 flash2.1 bugs

Greg Weirs weirs at flash.uchicago.edu
Sun Mar 16 11:42:17 CST 2003


Erik-Jan,

I did run the sedov problem in three dimensions, with the same fixes you
proposed, and the answers are resonable.

Sorry for the delay in the confirmation; I did the tests the week before
last and thought I had responded, but realized I hadn't when cleaning up
my mailbox.

Regards,
Greg

__________________

Greg Weirs
weirs at flash.uchicago.edu
773 834 3228
__________________

On Fri, 28 Feb 2003, Greg Weirs wrote:

> 
> Dear Erik-Jan,
> 
> Thank you for your report.
> 
> The second and third bugs you list are indeed errors, which I am looking
> into now. I haven't completely verified them yet but your modifications
> seem to be correct.
> 
> Greg
> 
> __________________
> 
> Greg Weirs
> weirs at flash.uchicago.edu
> 773 834 3228
> __________________
> 
> On Fri, 28 Feb 2003, Erik-Jan Rijkhorst wrote:
> 
> > Dear Flash developers,
> > 
> > I found 3 bugs in Flash2.1 which I've listed below.
> > 
> > Some info on the system I'm using:
> > (http://www.sara.nl/userinfo/teras/description/index.html)
> > Machine:          SGI Origin 3800
> > Compiler:         MIPSpro Fortran 90 compiler
> > Operating system: IRIX64 p1 6.5 04101930 IP35
> > 
> > ---------------------
> > 
> > Hard coded value in source/mesh/amr/paramesh2.0/ref_marking.F90:
> > 
> > ...
> > ! compute the error
> >                  num = 0.
> >                  denom = 0.
> > 
> >                  do kk = 1, ndim2
> >                     num = num + delu2(kk)**2
> >                     denom = denom + (delu3(kk) + &
> >                          &  (epsil*delu4(kk)+1.e-20))**2
> >                  end do
> > ...
> > 
> > When using very low densities (of the order of 1e-26) the code won't
> > refine. I solved this by putting my own version of ref_marking.F90 in the
> > setups/problem directory and replaced the value of 1.e-20 by 1.e-200. It
> > would be nice to change this to a parameter in a future Flash release?
> > 
> > ---------------------
> > 
> > Multiplication by cf_area is done twice at step 7b in
> > source/hydro/explicit/delta_form/kurganov/hydro_3d.F90
> > (you'll only notice this when running 3D simulations...)
> > 
> > ...
> > !!!!!!!!! Step 7b: Apply geometry factors.
> > !!!!!!!!!          Update deltaU.
> >         do j=1,ny
> >         do i=1,nx
> >           cf_area = (            ( xr(i)-xl(i) )                )     &
> >                   * (            ( yr(j)-yl(j) )                )
> >           flux_block(:,i,j,:) = flux_block(:,i,j,:)* cf_area
> >           do k=1,nz
> >             c_volume_i = 1.0/( cf_area*( zr(k) - zl(k) ) )
> >             flux_block(:,i,j,k) = flux_block(:,i,j,k)* cf_area
> >             du_local(:,i,j,k) =  du_local(:,i,j,k  ) -                &
> >                 c_volume_i*(   flux_block(:,i,j,k  )                  &
> >                              - flux_block(:,i,j,k-1) )
> >           enddo
> >         enddo
> >         enddo
> > ...
> > 
> > I think this should be
> > 
> > ...
> > !!!!!!!!! Step 7b: Apply geometry factors.
> > !!!!!!!!!          Update deltaU.
> >         do j=1,ny
> >         do i=1,nx
> >           cf_area = (            ( xr(i)-xl(i) )                )     &
> >                   * (            ( yr(j)-yl(j) )                )
> >           flux_block(:,i,j,:) = flux_block(:,i,j,:)* cf_area
> >           do k=1,nz
> >             c_volume_i = 1.0/( cf_area*( zr(k) - zl(k) ) )
> >             du_local(:,i,j,k) =  du_local(:,i,j,k  ) -                &
> >                 c_volume_i*(   flux_block(:,i,j,k  )                  &
> >                              - flux_block(:,i,j,k-1) )
> >           enddo
> >         enddo
> >         enddo
> > ...
> > 
> > ---------------------
> > 
> > Wrong index in source/formulation/state_form/du_update_zface.F90:
> > I used this formulation to implement an approximate Rieman solver that we
> > have here at Leiden.
> > I copied source/hydro/explicit/delta_form/kurganov to my own
> > source/hydro/explicit/delta_form/roe directory (see previous bug).
> > Note: you won't notice this bug until you start running 3D sims...
> > 
> > ...
> >   do 200 j=1,ny
> > !   Transpose ys into eos1d format.
> >     do n=1,ns
> >       ys_line(:,n) = ys(n,:,j)
> >     enddo
> >     call eos1d(2, 1, nx,        &
> >                    rho(:,k),    &
> >                      t(:,k),    &
> >                      p(:,k),    &
> >                   eint(:,k),    &
> >                gamma_c(:,k),    &
> >              ys_line(:,:  ),    &
> >                nx,ns          )
> > 200 continue
> > ...
> > 
> > I changed this to:
> > 
> > ...
> >   do 200 j=1,ny
> > !   Transpose ys into eos1d format.
> >     do n=1,ns
> >       ys_line(:,n) = ys(n,:,j)
> >     enddo
> >     call eos1d(2, 1, nx,        &
> >                    rho(:,j),    &
> >                      t(:,j),    &
> >                      p(:,j),    &
> >                   eint(:,j),    &
> >                gamma_c(:,j),    &
> >              ys_line(:,:  ),    &
> >                nx,ns          )
> > 200 continue
> > ...
> > 
> > ---------------------
> > 
> > cheers,
> > 
> > Erik-Jan Rijkhorst
> > 
> 
> 




More information about the flash-bugs mailing list