src/structures.inc

Fortran project RESTRAX, source module src/structures.inc.

Source module last modified on Wed, 13 Jul 2005, 16:20;
HTML image of Fortran source automatically generated by for2html on Mon, 29 May 2006, 15:06.


# *******  STRUCTURES FOR RESTRAX   *********************

      INCLUDE 'ness_com.inc'

      integer*4 slit_size
      STRUCTURE /SLIT/
        character*32  name
        real*8 dist,axi,axv
        real*8 size(3),sta(3),gon(3)
        real*8 pos(3),rot(3,3),rot1(3,3)
        logical*4 map(3),map1(3),simple
        integer*4 count  
        integer*4 shape
          integer*4 ndum  ! dummy integer for data alignment
      end structure    
      parameter (slit_size=336)

      integer*4 bender_size
      STRUCTURE /BENDER/
         record /SLIT/ frame
           real*8 w2,h2            ! width & height at the exit
           real*8 ghlu,ghld,ghru,ghrd,gvt,gvb   ! horizontal & vertical (H&V) critical angles
           real*8 rhlu,rhld,rhru,rhrd,rvt,rvb   ! horizontal& vertical reflectivities
           real*8 dlh,dlv          ! thickness of H&V lamellae
           real*8 curv             ! horizontal curvature            
           real*8 bint  ! integral Int(B)dz in [T*m]
           integer*4 nlh,nlv       ! number of slits (H&V)
           integer*4 typ           ! 0.. normal, 1 .. curved , 2.. reflecting surfaces 
           integer*4 nhlu,nhld,nhru,nhrd,nvt,nvb  ! indexes pointing to the fieald containg reflectivity data
           integer*4 ndum  ! dummy integer for data alignment
      end structure    
      parameter(bender_size=slit_size+184)    ! 520

      integer*4 soler_size
      STRUCTURE /SOLLER/
         record /SLIT/ frame
           real*8 w2,h2
           integer*4 nl
           integer*4  vertical
      end structure   
      parameter (soler_size=slit_size+24)   ! 360

      integer*4 cryst_size
      STRUCTURE /CRYSTAL/
           record /SLIT/ frame
           real*8 dhkl,chi,rh,rv,rb,poi,hmos,vmos,vol,fhkl,mi,mag
           real*8 thb,lambda,stmch,ctmch,qhkl,dext,ref,deta,tanvol
           real*8 dg_dr(3,3),g(3),gama(3),gtot
           logical*4 mapg(3)
           integer*4 dnrnd,nh,nv,nb,typ   
      end structure       
      parameter (cryst_size=slit_size+328)   ! 664

#// added TAUF (Fourier time for TASSE mode in [ns])
      integer*4 setup_size
      STRUCTURE /SETUP/
         integer*4 nfx,sm,ss,sa
         real*8 kfix,e,q,ki,kf,tauf
      end structure            
      parameter (setup_size=64)

      STRUCTURE /RANDFIELD/
         real*8 mean(crnd),limits(crnd),pool(crnd)
         integer*4  active(crnd),dim
      end structure     

      STRUCTURE /STATI/
         real*8 sum2(crnd,crnd),c(crnd,crnd),sum1(crnd)
         real*8 m(crnd),dm(crnd),sumn,p
         integer*4 nc
      end structure