[Nek5000-users] does load_fld() work with .f00* files ?? (default binary files)

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Mon Mar 12 07:00:11 CDT 2012


nek5000-users at lists.mcs.anl.gov a écrit :
> Hi everyone, i am trying to post process some data but it seems 
> load_fld doesn't load the velocity field correctly.
> My binary files are default .f00* files (param(66)=param(67)=0)
> I want to recalculate the vortex size (aa in my code) in a 2D case.
> So here is what i want my userchk() to do
> Open one by one .f00* files,
> Calculate the vorticity field from velocity field
> Restrain the domain to avoid Boundary conditions
> Calculate the circulation
> Calculate The vorticity barycenter coordinates
> Calculate The vorticity Size (aa)
> Output to "Rayon_Circulation_domaine_entier" file the quantity sqrt(aa)
> Does load_fld() work only with .fld files ?? Because with this i got 
> only negative values for the vorticity size and the circulation value 
> is not good
> B.regards
> Can
>
>
>
> My post-precessing part in my userchk() is like
>
>         ! read file-list
>         if (nid.eq.0) then
>            open(unit=199,file='file.list',form='formatted',status='old')
>            read(199,*) nfiles
>            read(199,'(A80)') (filename(j),j=1,nfiles)
>            close(199)
>         endif
>         call bcast(nfiles,isize)
>         call bcast(filename,nfiles*80)     
>         do j = 1,nfiles
>        call load_fld(filename(j))
>    call comp_vort3(vort,work1,work2,vx,vy,vz)
>        do i=1, ntot
>            if((abs(xm1(i,1,1,1))<14.9) .and. (abs(ym1(i,1,1,1))<14.9))
> &     then     
>            x_new(i)=xm1(i,1,1,1)
>            y_new(i)=ym1(i,1,1,1)
>            rId(i)=1.0
>
>          else
>
>            x_new(i)=0.0
>            y_new(i)=0.0
>            rId(i)=0.0
>
>          endif
>
>          enddo
>          circ=glsc3(rId,bm1,vort(1,1),ntot)
>          x_c=glsc3(x_new,bm1,vort(1,1),ntot)/circ                     
> ! Calculation of vorticity barrycenter
>          y_c=glsc3(y_new,bm1,vort(1,1),ntot)/circ
>
>          do i=1, ntot
>          if((abs(xm1(i,1,1,1))<14.9) .and. (abs(ym1(i,1,1,1))<14.9))
> &     then            rr(i)=(xm1(i,1,1,1)-x_c(1))**2 + (ym1(i,1,1,1)
>     &                  -y_c(1))**2
>          else
>            rr(i)=0.0
>          endif
>          enddo
>
>          aa=glsc3(rr,bm1,vort(1,1),ntot)/circ                        
>        ! Calculation of vorticity size
>    print*,'aa=',aa
>          if (nid.eq.0) then
>    
> open(UNIT=1,FILE='Rayon_Circulation_domaine_entier',STATUS='unknown')   
> !Output to 'Rayon_Circulation_domaine_entier' file
>    write(1,'(1p20E15.7)') time,sqrt(aa),circ
>    endif
>        enddo
>  
>    !we are done
>         call exitt
> c    
> ================================================================================================================= 
>
>
> _______________________________________________
> Nek5000-users mailing list
> Nek5000-users at lists.mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
Well sorry for this, load_fld() works great with .f00* files
Le problem was related to my grid in the domain which was not tight 
enough for x>10
Thx anyways



More information about the Nek5000-users mailing list