Quantcast
Channel: Intel® Software - Intel® Visual Fortran Compiler for Windows*
Viewing all articles
Browse latest Browse all 5691

Compiler fortran Error cfx5mkext -64bit

$
0
0

i have try to write this programm but don´t work i become errors i have no idea please i need a help. i would like to calculate CD

 

 

#include "cfx5ext.h"
dllexport(drag_factor)
      SUBROUTINE drag_factor (NLOC,NRET,NARG,RET,ARG,CRESLT,
     &                              CZ,DZ,IZ,LZ,RZ)
CC
CC --------------------
CC        Input
CC --------------------
CC
CC  NRET   - number of components in result
CC  NARG   - number of arguments in call
CC  ARG() - (NARG) argument values
CC
CC --------------------
CC      Modified
CC --------------------
CC
CC  Stacks possibly.
CC
CC --------------------
CC        Output
CC --------------------
CC
CC  RET()  - (NRET) return values
CC
CC --------------------
CC       Details
CC --------------------
CC
CC======================================================================
C
C ------------------------------
C     Preprocessor includes
C ------------------------------
C
C ------------------------------
C        Global Parameters
C ------------------------------
C
C ------------------------------
C        Argument list
C ------------------------------
C
      INTEGER NLOC,NARG,NRET
C
      REAL ARG(NLOC,NARG), RET(NLOC,NRET)
C
      CHARACTER CRESLT*(*)
C
      INTEGER IZ(*)
      CHARACTER CZ(*)*(1)
      DOUBLE PRECISION DZ(*)
      LOGICAL LZ(*)
      REAL RZ(*)
C
C ------------------------------
C        External routines
C ------------------------------
C
C ------------------------------
C        Local Parameters
C ------------------------------
C
C ------------------------------
C        Local Variables
C ------------------------------
C
C ------------------------------
C        Stack pointers
C ------------------------------
C
C=======================================================================
C
C ---------------------------
C    Executable Statements
C ---------------------------
C
C=======================================================================
C
C     Argument variables stack:
C     -------------------------
C     Particle Reynolds Number          :     RE_PT      = ARG(1,1)
C     Mean Particle Diameter            :     d_p        = ARG(1,2)
C     Turbulence Eddy Dissipation       :     psy        = ARG(1,3)
C     Dynamic Viscosity                 :     ny         = ARG(1,4)
C     Density                           :     rho        = ARG(1,5)
C
C     Return variables stack            :
C     -----------------------
C     drag factor coefficient           :     CD         = RET(1,1)
C
C=======================================================================
C
C-----------------------------------------------------------------------
C     Calculate the momentum source and source term coefficient
C-----------------------------------------------------------------------
C
      CALL USER_CD(RET(1,1),ARG(1,1),ARG(1,2),ARG(1,3),ARG(1,4),ARG(1,5))
      END
C
      SUBROUTINE USER_CD(CD,RE_PT,d_p,psy,ny,rho)
C
C=======================================================================
C     Calculate the momentum source and source term coefficient
C=======================================================================
C
C ------------------------------
C     Preprocessor includes
C ------------------------------
C
#include "cfd_sysdep.h"
#include "cfd_constants.h"
C
C ------------------------------
C        Argument list
C ------------------------------
C
      REAL CD, RE_PT, d_p, psy, ny, rho
C
C ------------------------------
C        Local variables
C ------------------------------
C
      REAL CD0, lambda
C
C------------------------------
C---- Calculate Brucato Model
C
      
      IF (RE_PT .LT. 1.) THEN
      CD0 = 22.73/RE_PT + 0.0903/RE_PT + 3.69
      lambda = (((ny/rho)**3)/psy)**(1/4)
      CD = CD0 + CD0*(0.000867*(d_p / lambda)**3)
      
      ELSEIF ((RE_PT .LT. 10.).and.(RE_PT .GT. 1.)) THEN
      CD0 = 29.167/RE_PT - 3.889/RE_PT + 1.222
      lambda = (((ny/rho)**3)/psy)**(1/4)
      CD = CD0 + CD0*(0.000867*(d_p / lambda)**3)

      ELSEIF ((RE_PT .LT. 100.).and.(RE_PT .GT. 10.)) THEN
      CD0 = 46.5/RE_PT - 116.67/RE_PT + 0.6167
      lambda = (((ny/rho)**3)/psy)**(1/4)
      CD = CD0 + CD0*(0.000867*(d_p / lambda)**3)

      ELSEIF ((RE_PT .LT. 1000.).and.(RE_PT .GT. 100.)) THEN
      CD0 = 98.33/RE_PT - 2778/RE_PT + 0.3644
      lambda = (((ny/rho)**3)/psy)**(1/4)
      CD = CD0 + CD0*(0.000867*(d_p / lambda)**3)

      ELSEIF ((RE_PT .LT. 5000.).and.(RE_PT .GT. 1000.)) THEN
      CD0 = 148.62/RE_PT - 47500/RE_PT + 0.357
      lambda = (((ny/rho)**3)/psy)**(1/4)
      CD = CD0 + CD0*(0.000867*(d_p / lambda)**3)

      ELSEIF ((RE_PT .GT. 5000.) THEN
      CD0 = - 490.546/RE_PT + 578700/RE_PT + 0.46
      lambda = (((ny/rho)**3)/psy)**(1/4)
      CD = CD0 + CD0*(0.000867*(d_p / lambda)**3)

      END IF
C
      END

 

 

AttachmentSize
DownloadUnbenannt.jpg61.49 KB

Viewing all articles
Browse latest Browse all 5691

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>