找回密码
 注册
查看: 2271|回复: 2

自定义程序的问题

[复制链接]
发表于 2010-4-19 19:44:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
我想问一下,用ufiles定义了一个进口程序bcdefi,然后定义了U、V、W,但是不知道为什么在我的电脑上计算之后总是没有流量,同样的文件在别人电脑上却很正常?
若是直接在控制面板里面定义U、V、W,也可以。
谢谢
谢谢
发表于 2010-8-7 10:03:21 | 显示全部楼层
SUBROUTINE BCDEFI(SCALAR,U,V,W,TE,ED,T,DEN,TURINT)
C     Boundary conditions at inlets
C*************************************************************************
C--------------------------------------------------------------------------*
C     STAR RELEASE 3.150                                                   *
C--------------------------------------------------------------------------*
      INCLUDE 'comdb.inc'

      COMMON/USR001/INTFLG(100)

      DIMENSION SCALAR(50)
      LOGICAL TURINT
      INCLUDE 'usrdat.inc'
      DIMENSION SCALC(50)
      EQUIVALENCE( UDAT12(001), ICTID )
      EQUIVALENCE( UDAT04(002), DENC )
      EQUIVALENCE( UDAT04(003), EDC )
      EQUIVALENCE( UDAT02(005), PR )
      EQUIVALENCE( UDAT04(005), PRC )
      EQUIVALENCE( UDAT04(009), SCALC(01) )
      EQUIVALENCE( UDAT04(007), TC )
      EQUIVALENCE( UDAT04(008), TEC )
      EQUIVALENCE( UDAT04(059), UC )
      EQUIVALENCE( UDAT04(060), VC )
      EQUIVALENCE( UDAT04(061), WC )
      EQUIVALENCE( UDAT04(064), UCL )
      EQUIVALENCE( UDAT04(065), VCL )
      EQUIVALENCE( UDAT04(066), WCL )
      EQUIVALENCE( UDAT02(070), X )
      EQUIVALENCE( UDAT02(071), Y )
      EQUIVALENCE( UDAT02(072), Z )
C-----------------------------------------------------------------------
C
C    This subroutine enables the user to specify INLET boundary
C    conditions for U,V,W,TE,ED,T and SCALAR.
C
C     Set TURINT=.TRUE.   if turbulence intensity and length scale are
C                         specified as TE and ED respectively
C     Set TURINT=.FALSE.  if k and epsilon are specified as TE and
C                         ED respectively
C
C    ** Parameters to be returned to STAR: U,V,W,TE,ED,T,
C                                          SCALAR, DEN, TURINT
C
C    NB U,V and W are in the local coordinate-system of the
C    inlet boundary.
C
C-----------------------------------------------------------------------
C
C     Sample coding: To specify inlet values for region 1
C
C      IF(IREG.EQ.1) THEN
C        TURINT=.FALSE.
C        U=
C        V=
C        W=
C        TE=
C        ED=
C        T=
C        SCALAR(1)=
C        DEN=
C      ENDIF
C-------------------------------------------------------------------------
c===========================================
      common/ishida/IS,PITH
      DIMENSION CM(3)
c     at the aproximate Center of the horizontal plane.
      DATA CM/0.0, 25.4395, 0.0/
      DATA Z0/74.6/, AL/0.25/, U0/1.0/
C====*7==0====+====0====+====0====+====0=====+===0====+====0====+====0==|
C
C====*7==0====+====0====+====0====+====0=====+===0====+====0====+====0==|
      if(INTFLG(1).eq.0) then
                INTFLG(1)=1
                  M6=66
                  OPEN(M6,FILE="out66",FORM="FORMATTED", status='unknown')
C====*7==0====+====0====+====0====+====0=====+===0====+====0====+====0==|
C                PITH=3.1416/180.0 * 45.0
                PITH=3.1416/180.0 *  0.0
                IS = 0
                      WRITE(M6,6000) ITER, IS, PITH
6000           FORMAT(1H , 'BCDEFI   ITER =', I5, ' IS =',I5,
     *                  ' pith =',E15.7)
C
                      WRITE(M6,6020)
6020           FORMAT(1H , ' ITER', '   IS',
C====*7==0====+====0====+====0====+====0=====+===0====+====0====+====0==|
     *          '         X', '         Y', '         Z',
     *          '              U', '              V',
     *          '              k', '        epsilon')
C                     AL1  = AL-1.
                      U1  = 0.1*U0
                      U0Z0=U0/Z0
      endif
C
C-------------------------------------------------------------------------
C====*7==0====+====0====+====0====+====0=====+===0====+====0====+====0==|
C
      TURINT=.FALSE.
C
      Z1  = Z/Z0
      Z1AL   = Z1**AL
      UU   = U0 *Z1AL
      U   = UU * COS(PITH)
      V   = UU * SIN(PITH)
C     U   = U0 *Z1AL
C     V   = 0.0
      W   = 0.0
      TE  = 1.5*(U1*U1)
C     0.3 = SQRT(0.09)
      ED  = 0.3*TE* (U0Z0) *AL * Z1AL/Z1
C     T   = 305.05
C        SCALAR(1)= 0.0159
C-------------------------------------------------------------------------
      IF(MOD(ITER, 10).NE.0)IS=0
      DY=ABS(CM(2)-Y)
      IF(MOD(ITER, 1000).EQ.0 .AND. DY.LE.0.0625)THEN
                IS = IS+1
                      WRITE(M6,6021) ITER, IS,
     *          X, Y, Z, U, V, TE, ED
6021           FORMAT(1H , I5, I5,
     *          F10.5, F10.5, F10.5,
     *         2E15.7, E15.7, E15.7)
      ENDIF

      RETURN
      END
C
发表于 2010-8-7 10:05:42 | 显示全部楼层
楼主作了哪些修改?程序在fortran上编辑有错吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表