Changeset 2878 for branches/2011/dev_r2802_MERCATOR10_diadct
- Timestamp:
- 2011-09-30T08:26:28+02:00 (13 years ago)
- Location:
- branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/compute_sections.f90
r2877 r2878 2 2 !!===================================================================== 3 3 !! *** MODULE diadct *** 4 !! Ocean diagnostics: Compute the transport trough a sec .4 !! Ocean diagnostics: Compute the transport trough a section 5 5 !! 6 !! History: 2011: Clement Bricaud, Mercator-Ocean 6 7 !! 7 !! History: 2011: cbricaud Mercator-Ocean8 8 !!=============================================================== 9 9 !! * Modules used … … 301 301 DO ji=1,jpi 302 302 coord_t=COORD_SECTION(glamf(ji,jj),gphif(ji,jj)) 303 !cbr zdistFirst = distance(coord_t,coordFirst)304 303 zdistFirst = distance2(coord_t,coordFirst) 305 !cbr zdistLast = distance(coord_t,coordLast)306 304 zdistLast = distance2(coord_t,coordLast) 307 305 IF( zdistFirst .LT. zdistmesh .AND. zdistFirst .LT. zdistante )THEN … … 370 368 371 369 IF( sec%nb_point .ne. 0 )THEN 372 !IF( nb_inmesh .NE. 0 )THEN373 370 374 371 !The serie of mesh's points that form the section will 'link' … … 393 390 394 391 !initialize distnew value (with distance between section's extremities) 395 !cbr zdistnew = distance(coordFirst,coordLast,sec%ll_date_line)396 392 zdistnew = distance2(coordFirst,coordLast,sec%ll_date_line) 397 393 prevPoint = POINT_SECTION(0,0) … … 596 592 CALL write_debug(jsec,cltmp) 597 593 598 ! on passe à l'ancienne methode: le point parmies les 4 pts (NSWE) qui se rapproche599 ! le + du dernier pt600 !-----------------------------601 594 !be carreful! we can't go backward. 602 603 595 zdistNorth = zdistNorth2 ; zdistSouth = zdistSouth2 604 596 zdistEst = zdistEst2 ; zdistWest = zdistWest2 -
branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/declarations.f90
r2858 r2878 2 2 !!---------------------------------------------------------------------------- 3 3 !! *** declarations global varibles 4 !! 5 !! History: 2011: Clement Bricaud, Mercator-Ocean 4 6 !! 5 7 !!---------------------------------------------------------------------------- -
branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/diadct_sections.f90
r2858 r2878 2 2 !!============================================================================== 3 3 !! *** PROGRAM generate_sections *** 4 !! 4 5 !! create a binary file containig the IJ positions of sections in global 5 6 !! coordinates for the diagnostic routine diadct.F90 of NEMO 6 !!7 7 !! 8 8 !! -
branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/readcoordmesh.f90
r2877 r2878 3 3 !! *** MODULE readcoordmesh *** 4 4 !! 5 !! History: 2011: cbricaudMercator-Ocean5 !! History: 2011: Clement Bricaud, Mercator-Ocean 6 6 !! 7 7 !!===================================================================== -
branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/readsections.f90
r2877 r2878 3 3 !! *** MODULE readsections *** 4 4 !! 5 !! History: 2011: cbricaudMercator-Ocean5 !! History: 2011: Clement Bricaud, Mercator-Ocean 6 6 !! 7 7 !!===================================================================== -
branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/sections_tools.f90
r2877 r2878 3 3 !! *** MODULE sections_tools *** 4 4 !! 5 !! History: 2011: cbricaudMercator-Ocean5 !! History: 2011: Clement Bricaud, Mercator-Ocean 6 6 !! 7 7 !!===================================================================== … … 14 14 !! * Routine accessibility 15 15 PUBLIC pointToCoordF ! define a point with geographical coordinates 16 PUBLIC distance ! compute distance between 2 points17 16 PUBLIC distance2 ! compute distance between 2 points 18 17 PUBLIC distance3 ! compute distance between a point and a line … … 42 41 43 42 END FUNCTION pointToCoordF 44 45 REAL(wp) FUNCTION distance(coordA,coordB,ld_date_line)46 !!---------------------------------------------------------------------47 !! *** FUNCTION distance ***48 !!49 !! ** Purpose: Compute distance between coordA and coordB50 !! We add 360° to coordB%long if the line (coordA,coordB)51 !! crosses the date-line.52 !!53 !!---------------------------------------------------------------------54 !! * arguments55 TYPE(COORD_SECTION), INTENT(IN) :: coordA,coordB56 LOGICAL,INTENT(IN),OPTIONAL :: ld_date_line57 58 !! * Local declarations59 INTEGER ::idateline ! local integer60 61 !-----------------------------------------------62 !63 idateline=064 IF( PRESENT( ld_date_line))THEN65 IF( ld_date_line )idateline=166 ENDIF67 !68 !function output69 distance = (sqrt((coordA%lon-coordB%lon-360*idateline )**2 + (coordA%lat-coordB%lat )**2))70 !71 RETURN72 !73 END FUNCTION distance74 43 75 44 REAL(wp) FUNCTION distance2(coordA,coordB,ld_date_line) -
branches/2011/dev_r2802_MERCATOR10_diadct/NEMOGCM/TOOLS/SECTIONS_DIADCT/src/writesections.f90
r2858 r2878 3 3 !! *** MODULE writesections *** 4 4 !! 5 !! History: 2011: cbricaudMercator-Ocean5 !! History: 2011: Clement Bricaud, Mercator-Ocean 6 6 !! 7 7 !!=====================================================================
Note: See TracChangeset
for help on using the changeset viewer.