Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/05/2017, à 10:21

abdelaali192

Probléme de compréhension

je suis Etudiant à l'université et débutant en fortran 90 , j'ai deja travaillé avec FORTRAN77 , le professeur ma passé un code mais j'arrive pas a comprendre certains lignes : par exemple pourquoi on utilise REAL(RP) et dans la ligne :REAL(RP) :: PI=4.0_RP*ATAN(1.0_RP) je sais que c'est le nombre PI mais pourquoi on écris comme ça avec 4.0 et (1.0_RP)
j'ai essayer de voir avec les livres fortran 90 mais j'ai du mal a comprendre

trés cordialement

Merci

voici le code:
MODULE PARTMOD

    INTEGER, PARAMETER :: SP=KIND(1.0)
    INTEGER, PARAMETER :: DP=KIND(1.0)
    INTEGER, PARAMETER :: RP=DP

    INTEGER , SAVE  :: ISCHEMA,NPAR,IPART,NITER,NFIN,SIZE,RANK,IERR,Nplaque,Nplaquep1,NPARM,ITER,ICOURANT,I_ENTREE_PART,I_REPRISE
    INTEGER , SAVE  :: SOUS_ITER,IHOULE,N_EMIS,N_EMIS_TEMPO,I_SYM,IDEBRML,IFRQRML,NPAR_FIXE,I_KUTTA,ITYPE_REAL,I_TOURB_FIX,N_TOURB_FIX,IOSCILLE
    REAL(RP), SAVE  :: SURFREF,RANO,DRSCT,SURFTOT,GAMMATOT,PNU,EPS,EPS2,DT,CIRCULATION,COUPURE,Xp,Yp,Lp,alpha_radian,ATIME
    REAL(RP), SAVE  :: C_SS_ITER,V_COURANT,AMPLITUDE,PERIODE,PROFONDEUR,LAMBDA,TEST_EMIS,H_FOND,H_SURF,TEMPS_ATTENUATION
    REAL(RP), SAVE  :: DL_REMAIL,OMEGA_COUPURE
    REAL(RP), DIMENSION(14,10), SAVE  :: TOURB_FIX
   
    REAL(RP) :: PI=4.0_RP*ATAN(1.0_RP)
    REAL(RP) :: DEUPI=2.0_RP*4.0_RP*ATAN(1.0_RP)
    REAL(RP) :: SUR2PI=1.0_RP/(2.0_rp*4.0_RP*ATAN(1.0_RP))
    REAL(RP) :: EPSMACH=EPSILON(1.0_RP)
    REAL(RP) :: ZERO=0.0_RP
    REAL(RP) :: ONE=1.0_RP
    INTEGER  :: SOUS_ITERmax= 50

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!                   POST - TRAITEMENT             !!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    INTEGER , SAVE  :: IDEBPOS,IFRQPOS,IDEBREP,IFRQREP
    INTEGER , SAVE  :: I_GRILLE, NTOTPOS, NX_DIM_GRILLE, NY_DIM_GRILLE, TEMPO2, I_TRAJ, N_MAX_EXPE, ERR_L2_N
    INTEGER , SAVE  :: N1,N2,N3,N4,NMOY,MODMOY,N1_SAUV,N2_SAUV,N3_SAUV,N4_SAUV,NT

    REAL(RP), DIMENSION(4,3) :: TRAJECTOIRE

    REAL(RP)                 :: DIST_CARACT_TOURB, SIGN_TOURBI, DEB_PERIODE, ERR_L2_SOM, ERR_L2, DELTA_T_MAX, ERREUR_RMS, ERR_L2_RES

    CHARACTER(LEN=4)         :: DIEZE
    CHARACTER(LEN=4)  , SAVE :: NUM_END
    CHARACTER(LEN=300), SAVE :: CHEM1,CHEM2,CHEM3,CHEM4


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!                   MARQUAGE - EFFORT             !!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    REAL(RP)                 :: SOMME_GAMMA_LIBRE, SOMME_GAMMA_LIBRE2, SOMME_GAMMA_LIE, SOMME_GAMMA_LIE2
    REAL(RP) , DIMENSION(4)  :: EFFORT_TOT



!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!                 DIFFUSION  et DISSIPATION       !!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    INTEGER , SAVE  :: I_LES, I_DNS
    REAL(RP), SAVE  :: LES_COEF,CONST_DIFFU_1,CONST_DIFFU_2,CONSERV_NUM,REH,OMEGA_NORM_MAX,CONSERV
    REAL(RP), SAVE  :: NUTMAX,myNUTMAX

END MODULE

Hors ligne

#2 Le 12/05/2017, à 10:42

αjet

Re : Probléme de compréhension

Je ne connais pas grand chose a FORTRAN mais j'ai l'impression que cela concerne le typage. Il semblerait que RP soit un entier, mais que pour certains calculs il doit etre interprete comme etant un reel (flottant).

http://earth.uni-muenster.de/~joergs/do … m_034.html

Merci d’éditer ton message et de mettre ton code dans les balises code prevues a cet effet. Ce serait beaucoup plus lisible.


αjet: ça se prononce alfajet, bordel ! | GMT+1 | Viens poueter avec moi, bordel ! | Mes photos | Shaarli | Fluidbuntu-fr

Hors ligne

#3 Le 12/05/2017, à 12:18

cqfd93

Re : Probléme de compréhension


cqfd93

Hors ligne

#4 Le 12/05/2017, à 13:04

pingouinux

Re : Probléme de compréhension

Bonjour,

abdelaali192 #1 a écrit :

je suis Etudiant à l'université et débutant en fortran 90

Apparemment, tu es aussi débutant en balises-code, et tu t'obstines à ne pas les mettre, comme te l'as rappelé cqfd93 en #3. Fais un minimum d'effort si tu veux de l'aide.

Hors ligne

#5 Le 12/05/2017, à 14:23

αjet

Re : Probléme de compréhension

pingouinux a écrit :

Bonjour,

abdelaali192 #1 a écrit :

je suis Etudiant à l'université et débutant en fortran 90

Apparemment, tu es aussi débutant en balises-code, et tu t'obstines à ne pas les mettre, comme te l'as rappelé cqfd93 en #3. Fais un minimum d'effort si tu veux de l'aide.

Ah ouais, j'avais pas vu l'autre fil de discussion ! O_o


αjet: ça se prononce alfajet, bordel ! | GMT+1 | Viens poueter avec moi, bordel ! | Mes photos | Shaarli | Fluidbuntu-fr

Hors ligne

#6 Le 12/05/2017, à 21:40

claudius01

Re : Probléme de compréhension

Bonsoir,

Je ne connais pas non plus le Fortran, mais '1.0_RP' définit la valeur 1.0 en Real Precision ;-))
cf. au hasard en cherchant bien: http://stackoverflow.com/questions/2553 … -in-a-loop et RC, RD, RN, RP, RU, and RZ (Round) Editing (Fortran 2003)

NB: La première chose que j'aurai fait dans l'évolution du Fortran, c'est de permettre l'utilisation des ... MINUSCULES ;-)))

Hors ligne

#7 Le 12/05/2017, à 22:06

pingouinux

Re : Probléme de compréhension

claudius01 #6 a écrit :

NB: La première chose que j'aurai fait dans l'évolution du Fortran, c'est de permettre l'utilisation des ... MINUSCULES ;-)))

C'est autorisé depuis longtemps…

Hors ligne