±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 1157  |  »Ø¸´: 4

lijunjiexm

Ìú³æ (СÓÐÃûÆø)

[ÇóÖú] ÇóÖúÒ»¸ö±àÒë³ö´íµÄ¼òµ¥³ÌÐò£¬Çë¶à¶àÖ¸½Ì£¬Ð»Ð»

ÔÚ½¨Á¢µÄÒ»¸öprojectµÄSource filesµÄÆäÖÐÃüÃûΪSTRESSAVGµÄfÎļþÈçÏ£º
C
C**********************************************************************
C**********************************************************************
C**********************************************************************
C
      SUBROUTINE STRESSAVG(NUMEL, STORE, I1, I2, STR, NKT,
     >                     ORDWHERE, FIRST, LAST,
     >                     COUNTPLUS, COUNTMINS, COUNTFLAG)
      IMPLICIT   NONE
      INCLUDE   'PARAMETERS.INC'
      INCLUDE   'NUMBERS.INC'
      INTEGER*4  ORDWHERE(NDMB)
      INTEGER*4  I
      INTEGER*4  FIRST (NUMEL + 1), LAST (NUMEL + 1)
      REAL*8     STORE (NDMB)
      REAL*8     SUM1, SUM2, NKT
      REAL*8     STR(2, 3, NUMEL)
      INTEGER*4  II, J, I1, I2, INDEX, NUMEL
      INTEGER*4  COUNTPLUS(NUMEL), COUNTMINS(NUMEL)
      LOGICAL*1  COUNTFLAG
C
C----------------------------------------------------------------------
C       STR (i , j , k)
C
C            ^   ^   ^
C            |   |   |_________ element number
C            |   |_____________ components in order xx, yx, yy
C            |_________________ triangle number (1 or 2)
C
C----------------------------------------------------------------------
C
      IF (COUNTFLAG) THEN
        DO I = 1 , NUMEL
          COUNTPLUS(I) = 0
          COUNTMINS(I) = 0
        ENDDO
      ENDIF
      IF     ((I1 .EQ. 1) .AND. (I2 .EQ. 1)) THEN
        INDEX = 1
      ELSEIF ((I1 .EQ. 1) .AND. (I2 .EQ. 2)) THEN
        INDEX = 2
      ELSEIF ((I1 .EQ. 2) .AND. (I2 .EQ. 2)) THEN
        INDEX = 3
      ELSE
        PRINT *,'Wrong indices for stress tensor'
      ENDIF
      DO J = 1 , NUMEL
        SUM1 = ZERO
        SUM2 = ZERO
*vdir nodep
CDIR$ IVDEP
        DO II = FIRST(J) , LAST(J)
          I = ORDWHERE(II)
          IF (I .GT. 0) THEN
            SUM1 = SUM1 + STORE(I)
            IF (COUNTFLAG) THEN
              COUNTPLUS(J) = COUNTPLUS(J) + 1
            ENDIF
          ELSE
            SUM2 = SUM2 + STORE(-I)
            IF (COUNTFLAG) THEN
              COUNTMINS(J) = COUNTMINS(J) + 1
            ENDIF
          ENDIF
        ENDDO
        STR(1 , INDEX , J) = SUM1
        STR(2 , INDEX , J) = SUM2
      ENDDO
      DO J = 1 , NUMEL
        STR(1 , INDEX , J) =  STR(1 , INDEX , J) * NKT /
     >                        MAX(1 , COUNTPLUS(J))
        STR(2 , INDEX , J) =  STR(2 , INDEX , J) * NKT /
     >                        MAX(1 , COUNTMINS(J))
      ENDDO
      IF ((INDEX .EQ. 1) .OR. (INDEX .EQ. 3)) THEN
        DO J = 1 , NUMEL
            STR(1 , INDEX , J) = STR(1 , INDEX , J) - NKT
            STR(2 , INDEX , J) = STR(2 , INDEX , J) - NKT
        ENDDO        
      ENDIF
      RETURN
      END


¶øPARAMETERS.INCºÍNUMBERS.INCͬʱ±£´æÔÚͬһ¸öprojectϵÄExtenal DependenciecÎļþ¼ÐÖУº

PARAMETERS.INCÎļþΪ£º

      INTEGER*4   NSD,    NEN,    NDOF
      INTEGER*4   NNPMAX, NELMAX, NEQMAX
      INTEGER*4   NSBDIV, NBWMAX
      INTEGER*4   NBUF  , MAXTRACE
      INTEGER*4   NDMB
C
      PARAMETER ( NSD      =                   2,
     >            NEN      =                   4,
     >            NDOF     =                   2,
     >            NNPMAX   =                3000,
     >            NEQMAX   =       NDOF * NNPMAX,
     >            NSBDIV   =                 110,
     >            NBWMAX   =       NDOF * NSBDIV,
     >            NDMB     =              524288,
C     >            NDMB     =               65536,
C    >            NDMB     =                2048,
     >            NBUF     =                1024,
     >            NELMAX   =                3000,
     >            MAXTRACE =               10000 )


NUMBERS.INC ÎļþΪ£º

      REAL*8     ZERO, ONE, TWO, THREE, FOUR, FIVE, SIX,
     >           HALF, THIRD, SIXTH,
     >           FOURTH, TWSVTH, NINTH, TWFOUR,
     >           PI, TWOPI, FTPI,
     >           RSMALL
      PARAMETER (ZERO   = 0.0                              ,
     >           ONE    = 1.0                              ,
     >           TWO    = 2.0                              ,
     >           THREE  = 3.0                              ,
     >           FOUR   = 4.0                              ,
     >           FIVE   = 5.0                              ,
     >           SIX    = 6.0                              ,
     >           HALF   = 1.0 /  2.0                       ,
     >           THIRD  = 1.0 /  3.0                       ,
     >           SIXTH  = 1.0 /  6.0                       ,
     >           FOURTH = 1.0 /  4.0                       ,
     >           TWSVTH = 1.0 / 27.0                       ,
     >           NINTH  = 1.0 /  9.0                       ,
     >           TWFOUR = 24.                              ,
     >           PI     =      3.14159265358979323846      ,
     >           TWOPI  = 2. * 3.14159265358979323846      ,
     >           FTPI   = 4. * 3.14159265358979323846 / 3. ,
     >           RSMALL = 1.0E-30                     )
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

lijunjiexm

Ìú³æ (СÓÐÃûÆø)

¡ï
dubo(½ð±Ò+1): »¶Ó­³£À´³ÌÐòÓïÑÔ°æÌÖÂÛ 2011-07-31 13:31:08
ÔÚwindowsÏÂCompaq Visual Fotran±àÒë³öÏÖÈçÏ´íÎóÐÅÏ¢£¨Çë¶à¶àÖ¸½Ì£¬Ð»Ð»£©£º

-------------------Configuration: sucontr - Win32 Debug--------------------
Compiling Fortran...
G:\Program Files\sucontr\src\stressavg.f
G:\Program Files\sucontr\src\stressavg.f(14) : Error: This name does not have a type, and must have an explicit type.   [NUMEL]
      INTEGER*4  FIRST (NUMEL + 1), LAST (NUMEL + 1)
------------------------^
G:\Program Files\sucontr\src\stressavg.f(14) : Error: A specification expression is invalid.   [NUMEL]
      INTEGER*4  FIRST (NUMEL + 1), LAST (NUMEL + 1)
------------------------^
G:\Program Files\sucontr\src\stressavg.f(14) : Error: A specification expression is invalid.   [NUMEL]
      INTEGER*4  FIRST (NUMEL + 1), LAST (NUMEL + 1)
------------------------------------------^
G:\Program Files\sucontr\src\stressavg.f(17) : Error: A specification expression is invalid.   [NUMEL]
      REAL*8     STR(2, 3, NUMEL)
---------------------------^
Error executing df.exe.

stressavg.obj - 4 error(s), 0 warning(s)
2Â¥2011-07-17 21:58:30
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï
jjdg(½ð±Ò+1): ¸ÐлӦÖú 2011-07-17 22:18:08
lijunjiexm(½ð±Ò+2): ¸ÄÁË£¬»¹ÊDz»ÐС£¡£ 2011-07-17 23:14:39
ÄãÔÚINCLUDE   'NUMBERS.INC'ºó¼ÓÒ»¾ä£º
INTEGER*4 NUMEL
Ó¦¸Ã¾Í¿ÉÒÔÁË¡­¡­
3Â¥2011-07-17 22:12:46
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï
jjdg(½ð±Ò+1): ¸Ðл²ÎÓë 2011-07-18 14:51:34
¿´³ö´íÐÅÏ¢£º
G:\Program Files\sucontr\src\stressavg.f(14) : Error: This name does not have a type, and must have an explicit type.   [NUMEL]

˵µÄ¾ÍÊÇÎÒÇ°Ãæ¸ø³öµÄÄǸö½â¾ö·½°¸¡£

²»¹ý£¬ÎÒ¸Õ²ÅÓÃgfortranÊÔÁËһϣ¬¼´Ê¹²»¼ÓÇ°ÃæµÄÄÇÒ»¾ä»°£¬¶¼¿ÉÒÔ˳Àû±àÒë°¡¡­¡­
4Â¥2011-07-17 23:32:05
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

snoopyzhao

ÖÁ×ðľ³æ (Ö°Òµ×÷¼Ò)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï ¡ï
jjdg(½ð±Ò+2): ¸Ðл²ÎÓë 2011-07-18 14:51:45
lijunjiexm(½ð±Ò+28): Thanks.Ï£ÍûÒԺ󻹿ÉÒÔÏòÄúÌÖ½ÌFortranµÄÎÊÌâ¡£ 2011-07-19 08:15:56
Ŷ£¬¿´µ½ÎÊÌâÁË£¬ÄãÔÚµÚ 19 ÐÐÉùÃûÁË NUMEL£¬µ«ÄãÔÚµÚ 14 ÐÐÓÃÁË NUMEL

ËùÒÔ£¬Äãɾµô 19 ÐÐÖÐµÄ NUMEL£¬È»ºó°´ÎÒµÚÒ»ÌûÖеķ½·¨ÔÙÊÔһϡ­¡­
5Â¥2011-07-17 23:35:19
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ lijunjiexm µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 308Çóµ÷¼Á +4 maverick^_^ 2026-04-03 4/200 2026-04-05 19:08 by À¶ÔÆË¼Óê
[¿¼ÑÐ] ²ÄÁÏ0856 Ó¢Ò»Êý¶þ 323 Çóµ÷¼Á +14 Ô¬sy 2026-04-01 14/700 2026-04-05 18:18 by cql1109
[¿¼ÑÐ] 288Çóµ÷¼Á +7 ûÓдð°¸_ 2026-04-05 7/350 2026-04-05 17:01 by yulian1987
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤371Çóµ÷¼Á +10 ÅãÁÕ¿´º£ 2026-04-04 11/550 2026-04-05 15:26 by luoyongfeng
[¿¼ÑÐ] 313Çóµ÷¼Á +5 º£ÈÕº£ÈÕ 2026-04-04 7/350 2026-04-05 13:58 by imissbao
[¿¼ÑÐ] 085602µ÷¼Á ³õÊÔ×Ü·Ö335 +7 19123253302 2026-04-05 7/350 2026-04-05 13:26 by lbsjt
[¿¼ÑÐ] µ÷¼ÁÇóÖú +10 Ïë»»ÊÖ»ú²»Ïë½âÊ 2026-04-02 13/650 2026-04-05 09:41 by sam3303
[¿¼ÑÐ] 0854Çóµ÷¼Á +4 assdll 2026-04-03 4/200 2026-04-04 22:17 by hemengdong
[¿¼ÑÐ] Ò»Ö¾Ô¸ÄÏÅ©090401£¬268£¬Çóµ÷¼Á +5 һľÄñÈ» 2026-04-04 5/250 2026-04-04 17:07 by babysonlkd
[¿¼ÑÐ] 274Çóµ÷¼Á +9 ˳Àí³ÉÕÅ 2026-04-03 10/500 2026-04-03 15:10 by °¡¿¡£¡
[¿¼ÑÐ] 266Çóµ÷¼Á +3 08µçÆø¹¤³Ì 2026-04-03 3/150 2026-04-03 14:05 by 1753564080
[¿¼ÑÐ] Çó²ÄÁϵ÷¼Á Ò»Ö¾Ô¸Äϲý´óѧ 328·Ö +5 yyy..... 2026-04-03 5/250 2026-04-03 13:46 by °ÙÁéͯ888
[¿¼ÑÐ] Çóµ÷¼Á 302·Ö³õÊÔ 0854 +5 Áæ¿ÉÀÖ 2026-04-02 5/250 2026-04-02 17:53 by ±ÊÂä½õÖÝ
[¿¼ÑÐ] 318Çóµ÷¼Á +3 óÆÐÐÖÂÔ¶. 2026-03-31 4/200 2026-04-02 15:56 by Jaylen.
[¿¼ÑÐ] µ÷¼Á +3 ºÃºÃ¶ÁÊé¡£ 2026-04-01 6/300 2026-04-02 15:49 by liumengping
[¿¼ÑÐ] 279Çóµ÷¼Á +7 Īxiao 2026-04-01 7/350 2026-04-01 22:05 by ¿Í¶ûÃÀµÂ
[¿¼ÑÐ] 292Çóµ÷¼Á +17 ľ³æer12138 2026-04-01 17/850 2026-04-01 21:37 by Æß¶È²»ÐÅÈÎ
[¿¼ÑÐ] 358Çóµ÷¼Á +3 ÍõÏòÑô»¨ 2026-03-31 3/150 2026-04-01 09:56 by zzchen2000
[¿¼ÑÐ] µ÷¼ÁÉêÇë +8 ÕÅÕÅÕÅÕÅzy 2026-03-31 9/450 2026-04-01 08:29 by zjbkx
[¿¼ÑÐ] ±§Ç¸ +3 ÌïºéÓÐ 2026-03-30 3/150 2026-03-30 19:11 by ÃÔºýCCPs
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û