131 | | |
132 | | |
| 131 | == Manual file improvement == |
| 132 | |
| 133 | |
| 134 | The realization of a bathymetry file in an automatic way is not fully satisfactory for the reasons which we indicated in introduction. It is thus necessary to check the coherence of the results visually, to correct and sometimes modify after validation by a simulation with the model. The manual correction is not easy and several methods were tried in the past. The systematic checking is tiresome and it must be limited to the principal thresholds as soon as the field comprises more than 10000 points of grid. The use of IDL allows us :[[BR]] |
| 135 | |
| 136 | -To post bathymetry.[[BR]] |
| 137 | -To select a under-field on which one wishes to make checks or modifications.[[BR]] |
| 138 | -To modify and save.[[BR]] |
| 139 | -To index islands if necessary.[[BR]] |
| 140 | |
| 141 | The utility was developed using software IDL and was used on the machine rhodes.idris.fr of the IDRIS. |
| 142 | The whole of IDL procedures are called IDL_OPABAT and use files made up at the first step.[[BR]] |
| 143 | |
| 144 | -BATINI, procedure initializing dimensions, to modify.[[BR]] |
| 145 | -BATEXP, reading of the files, pretreatment of the file so necessary, selection of a under-field, posting.[[BR]] |
| 146 | -BATMOD, work, modification level by level.[[BR]] |
| 147 | -BATSAV, save, indentation of the islands.[[BR]] |
| 148 | |
| 149 | |
| 150 | == Example == |
| 151 | |
| 152 | |
| 153 | |
| 154 | {{{ |
| 155 | rhodes-rrup448: idl |
| 156 | |
| 157 | IDL Version 5.1 (IRIX mipseb). Research Systems, Inc. |
| 158 | Installation number: 12072-0. |
| 159 | Licensed for use by: IDRIS/CNRS |
| 160 | For basic information, enter "IDLInfo" at the IDL> prompt. |
| 161 | }}} |
| 162 | |
| 163 | |
| 164 | We execute step by step the following parts:[[BR]] |
| 165 | |
| 166 | - @batini : re-initialization of array size |
| 167 | - batexp : construction d un zoomreading of the files, removal of the ponds (see A3), construction of a zoom[[BR]] |
| 168 | - batmod: work on the zoom of bathymetry, level by level[[BR]] |
| 169 | - batsav : handing-over of the islands to -n (see A2A2) and save of a file of bathymetry[[BR]] |
| 170 | |
| 171 | |
| 172 | == Initialization part == |
| 173 | |
| 174 | |
| 175 | {{{ |
| 176 | IDL> @batini |
| 177 | |
| 178 | PROCEDURE IDL pour la BATHYMETRIE CLIPPER |
| 179 | ========================================= |
| 180 | |
| 181 | % Compiled module: LOADCT. |
| 182 | % LOADCT: Loading table Arc en Ciel / Phase |
| 183 | |
| 184 | fin de l initialisation |
| 185 | |
| 186 | Vous pouvez faire appel a d autres procedures : |
| 187 | @batini : Reinitialisation des dimensions et tableaux communs |
| 188 | batexp : lecture des fichiers, suppression des mares |
| 189 | et construction d'un zoom |
| 190 | batmod : travail sur le zoom de la bathymetrie, niveau par niveau |
| 191 | batsav : remise des iles a -n et sauvegarde d un fichier bathy |
| 192 | }}} |
| 193 | |
| 194 | |
| 195 | == Launching reading procedures == |
| 196 | |
| 197 | |
| 198 | {{{ |
| 199 | |
| 200 | IDL> batexp |
| 201 | |
| 202 | % Compiled module: BATEXP. |
| 203 | |
| 204 | Lecture des fichiers, noms par défaut : global.bin, global.bat |
| 205 | |
| 206 | -> -> -> -> -> -> voulez-vous : |
| 207 | lire les bathymetries initiales , y or n(implicit)? |
| 208 | |
| 209 | :y |
| 210 | |
| 211 | lecture des bathymetries initiales |
| 212 | |
| 213 | % Compiled module: BATLEC. |
| 214 | |
| 215 | bathymetrie haute resolution nom = global.bin, y(implicit) or n? |
| 216 | |
| 217 | :y |
| 218 | |
| 219 | haute resolution lue |
| 220 | |
| 221 | % Compiled module: BATLEC2. |
| 222 | |
| 223 | bathymetrie basse resolution nom = global.bat, y(implicit) or n? |
| 224 | |
| 225 | : n |
| 226 | |
| 227 | ------>> rentrez un nom de fichier ? |
| 228 | : bathy_ebauche |
| 229 | |
| 230 | OK lecture bathy_ebauche |
| 231 | basse resolution lue |
| 232 | }}} |
| 233 | |
| 234 | Possible treatments:[[BR]] |
| 235 | |
| 236 | For more information on the channels, refer to the appendix A3[[BR]] |
| 237 | |
| 238 | |
| 239 | {{{ |
| 240 | -> -> -> -> -> -> voulez-vous : |
| 241 | traiter les mares et chenaux, y or n(implicit)? |
| 242 | |
| 243 | :n |
| 244 | }}} |
| 245 | |
| 246 | Selection of a under-field by clicking the mouse on a zone[[BR]] |
| 247 | |
| 248 | |
| 249 | |
| 250 | {{{ |
| 251 | -> -> -> -> -> -> voulez-vous : |
| 252 | positionner le zoom , y or n(implicit)? |
| 253 | |
| 254 | : y |
| 255 | |
| 256 | % Compiled module: BATCLIC. |
| 257 | |
| 258 | -> -> -> -> positionner et cliquer la souris |
| 259 | }}} |
| 260 | |
| 261 | |
| 262 | |
| 263 | {{{ |
| 264 | -> -> -> -> -> -> le zoom vous convient-il, y(implicit) or n? |
| 265 | : y |
| 266 | |
| 267 | reduction et zoom pour pave 1320 1164 |
| 268 | |
| 269 | % Compiled module: BATZOOM. |
| 270 | }}} |
| 271 | |
| 272 | |
| 273 | Posting if desired the file of bathymetry and file of control with a higher resolution:[[BR]] |
| 274 | |
| 275 | |
| 276 | |
| 277 | {{{ |
| 278 | -> -> -> -> -> -> voulez-vous : |
| 279 | |
| 280 | affichez le zoom de la basse resolution, y or n(implicit)? |
| 281 | |
| 282 | :y |
| 283 | |
| 284 | affichage |
| 285 | }}} |
| 286 | |
| 287 | |
| 288 | |
| 289 | {{{ |
| 290 | -> -> -> -> -> -> voulez-vous : |
| 291 | |
| 292 | afficher le zoom de la basse resolution avec chenaux, y or n(implicit)? |
| 293 | }}} |
| 294 | |
| 295 | |
| 296 | For more information on the channels please refer to appendix A2:[[BR]] |
| 297 | |
| 298 | |
| 299 | |
| 300 | {{{ |
| 301 | n |
| 302 | |
| 303 | -> -> -> -> -> -> voulez-vous : |
| 304 | |
| 305 | affichez le zoom de la haute resolution, y or n(implicit)? |
| 306 | |
| 307 | :y |
| 308 | |
| 309 | affichage |
| 310 | }}} |
| 311 | |
| 312 | |
| 313 | {{{ |
| 314 | |
| 315 | Fin de la procedure BATEXP |
| 316 | }}} |
| 317 | |
| 318 | |
| 319 | |
| 320 | == Launching the working procedure == |
| 321 | |
| 322 | |
| 323 | {{{ |
| 324 | IDL> batmod |
| 325 | |
| 326 | % Compiled module: BATMOD. |
| 327 | |
| 328 | % LOADCT: Loading table Arc en Ciel / Phase |
| 329 | |
| 330 | entrez le niveau? |
| 331 | }}} |
| 332 | |
| 333 | One selected a level expressed in model level[[BR]] |
| 334 | |
| 335 | |
| 336 | {{{ |
| 337 | 20 |
| 338 | |
| 339 | on va visualiser le niveau 20 |
| 340 | |
| 341 | On peut changer de niveau en cliquant un bouton de la souris |
| 342 | |
| 343 | -> -> -> -> -> -> positionner et cliquer la souris |
| 344 | |
| 345 | bouton gauche -> informations |
| 346 | |
| 347 | milieu -> modifier |
| 348 | |
| 349 | droite -> sortir |
| 350 | }}} |
| 351 | |
| 352 | Action with the mouse |
| 353 | |
| 354 | {{{ |
| 355 | -> -> -> -> changement de niveau de 0 a jpk ou n? |
| 356 | |
| 357 | : 25 |
| 358 | }}} |
| 359 | |
| 360 | The under-field is posted with a pallet of colors corresponding to the two levels directly above (hot colors) or below (cold colors) the level selected (yellow color), in isolignes black contours of the file of control :[[BR]] |
| 361 | |
| 362 | |
| 363 | Possibly, we can modify the levels posted.[[BR]] |
| 364 | |
| 365 | Two modes can be selected via the mouse :[[BR]] |
| 366 | |
| 367 | |
| 368 | - An indicative mode, while clicking on the mouse, we post the level of an area and the maximum and minimum values of the file of control in this area.[[BR]] |
| 369 | |
| 370 | |
| 371 | Action with the mouse[[BR]] |
| 372 | |
| 373 | |
| 374 | {{{ |
| 375 | pt ( 124, 120) BR= 25.5000 |
| 376 | |
| 377 | Haute resolution min 24.6479 moy 25.9379 max 26.6315 |
| 378 | }}} |
| 379 | |
| 380 | Action with the mouse[[BR]] |
| 381 | |
| 382 | {{{ |
| 383 | pt ( 125, 120) BR= 25.5000 |
| 384 | |
| 385 | Haute resolution min 25.8304 moy 26.6145 max 27.2046 |
| 386 | }}} |
| 387 | |
| 388 | A modification mode, where, with the mouse, we increase or decrease by a model level, example: passage from 24 to 25 for the item (123, 120) :[[BR]] |
| 389 | |
| 390 | {{{ |
| 391 | bouton gauche --> monter (combler) new jk=jk-1 |
| 392 | |
| 393 | milieu --> descendre (creuser) new jk=jk+1 |
| 394 | |
| 395 | droite --> sortir |
| 396 | }}} |
| 397 | |
| 398 | Action with the mouse[[BR]] |
| 399 | |
| 400 | {{pt ( 123, 120) BR= 24.5000 |
| 401 | |
| 402 | Haute resolution min 23.5273 moy 24.9224 max 26.0350{ |
| 403 | |
| 404 | }}} |
| 405 | |
| 406 | Action with the mouse |
| 407 | |
| 408 | {{{ |
| 409 | --> descendu de 24.5000 a 25.5000 |
| 410 | |
| 411 | pt ( 123, 120) BR= 25.5000 |
| 412 | |
| 413 | Haute resolution min 23.5273 moy 24.9224 max 26.0350 |
| 414 | }}} |
| 415 | |
| 416 | Action with the mouse[[BR]] |
| 417 | |
| 418 | |
| 419 | {{{ |
| 420 | --> monte de 25.5000 a 24.5000 |
| 421 | }}} |
| 422 | |
| 423 | Exit of the procedure and save the modifications in the under-field[[BR]] |
| 424 | |
| 425 | Action with the mouse[[BR]] |
| 426 | |
| 427 | |
| 428 | {{{ |
| 429 | -> -> -> -> changement de niveau de 0 a jpk ou n? |
| 430 | |
| 431 | : n |
| 432 | |
| 433 | sortir |
| 434 | }}} |
| 435 | |
| 436 | == Safeguard == |
| 437 | |
| 438 | |
| 439 | {{{ |
| 440 | Voulez-vous mettre a jour le tableau BATHY |
| 441 | |
| 442 | en prenant en compte les corrections faite sur ce ZOOM ? |
| 443 | |
| 444 | y or n ? |
| 445 | |
| 446 | :y |
| 447 | |
| 448 | sauvegarde |
| 449 | |
| 450 | % Compiled module: BATSAV. |
| 451 | }}} |
| 452 | |
| 453 | |
| 454 | We can number the islands before saving. (further informations, see appendix A3)[[BR]] |
| 455 | |
| 456 | {{{ |
| 457 | -> -> -> -> remplissage des iles, y ou n(implicit)? |
| 458 | |
| 459 | Sauvegarde de bathy |
| 460 | |
| 461 | ------>> rentrez un nom de fichier ? |
| 462 | |
| 463 | : nouvelle_bathy |
| 464 | |
| 465 | procedure terminee: |
| 466 | |
| 467 | Vous pouvez faire appel a d autres procedures : |
| 468 | |
| 469 | @batini : Reinitialisation des dimensions et tableaux communs |
| 470 | |
| 471 | batexp : lecture des fichiers, suppression des mares |
| 472 | |
| 473 | et construction d un zoom |
| 474 | |
| 475 | batmod : travail sur le zoom de la bathymetrie, niveau par niveau |
| 476 | |
| 477 | batsav : remise des iles a -n et sauvegarde d un fichier bathy |
| 478 | |
| 479 | -> -> -> -> -> -> voulez-vous : |
| 480 | |
| 481 | affichez le zoom de la nouvelle bathy, y or n(implicit)? |
| 482 | |
| 483 | : n |
| 484 | |
| 485 | Vous pouvez faire appel a d autres procedures … |
| 486 | |
| 487 | IDL> |
| 488 | }}} |
| 489 | |
| 490 | A call of the procedures can be reiterated as many times as wanted to make posting and correction of under-field then leave IDL. |
| 491 | |
| 492 | |
| 493 | |
| 494 | == Appendix == |
| 495 | |
| 496 | == A1: Mouth of the rivers == |
| 497 | |
| 498 | |
| 499 | An additional procedure RUNOFF is under development for, starting from a first file of outline and layout of the coasts, to correct the localization and the distribution (on one or more points of grid) the mouth of the rivers. |
| 500 | |
| 501 | |
| 502 | |
| 503 | == A2: Channels removal == |
| 504 | |
| 505 | |
| 506 | The outline file of bathymetry created automatically using FORTRAN programs involves the appearance in the file of ponds (major isolated points) or of channels (deep corridors). Initially a subroutine made it possible to fill them. It seemed more relevant to defer this algorithm in procedure BATEXP of IDL to make it possible to the user to operate a choice on the way of correcting them. |
| 507 | |
| 508 | {{{ |
| 509 | -> -> -> -> -> -> voulez-vous : |
| 510 | |
| 511 | traiter les mares et cheneaux, y or n(implicit)? |
| 512 | |
| 513 | : y |
| 514 | |
| 515 | -> -> -> -> -> -> voulez-vous : |
| 516 | |
| 517 | supprimer les points ocean quasi-isoles , y or n(implicit) ? |
| 518 | |
| 519 | : y |
| 520 | |
| 521 | affichage des points isoles, passage numero : 1 |
| 522 | |
| 523 | nombre de points isoles trouves : 5 |
| 524 | |
| 525 | continuer la suppression ? , y or n(implicit)? |
| 526 | |
| 527 | : y |
| 528 | |
| 529 | affichage des points isoles, passage numero : 2 |
| 530 | |
| 531 | : y |
| 532 | |
| 533 | nombre de points isoles trouves : 2 |
| 534 | |
| 535 | continuer la suppression ? , y or n(implicit)? |
| 536 | |
| 537 | : n |
| 538 | |
| 539 | affichage des points isoles supprimes |
| 540 | |
| 541 | nombre de points retouches EN TOUT sur 3 iterations : 8 |
| 542 | |
| 543 | enregistrer ces suppressions sur bathy? , y(implicit) or n? |
| 544 | |
| 545 | : y |
| 546 | |
| 547 | suppression enregistree |
| 548 | |
| 549 | -> -> -> -> -> -> voulez-vous : |
| 550 | |
| 551 | elargissement des cheneaux, y or n(implicit) ? |
| 552 | |
| 553 | : y |
| 554 | |
| 555 | affichage des cheneaux, passage numero : 1 |
| 556 | |
| 557 | probleme chenal 140 102 entre continent/iles ! 18 0 0 |
| 558 | |
| 559 | nombre de points cheneaux trouves N-S : 0 |
| 560 | |
| 561 | nombre de points cheneaux trouves E-W : 1 |
| 562 | |
| 563 | continuer la correction ? , y or n(implicit)? |
| 564 | |
| 565 | affichage des points cheneaux corriges |
| 566 | |
| 567 | nombre de points N-S EN TOUT sur 1 iterations : 0 |
| 568 | |
| 569 | nombre de points E-W EN TOUT sur 1 iterations : 1 |
| 570 | |
| 571 | enregistrer ces modifications sur bathy? , y(implicit) or n? |
| 572 | |
| 573 | modification enregistree |
| 574 | }}} |
| 575 | |
| 576 | |
| 577 | == A3: Islands classification == |
| 578 | |
| 579 | When the field has islands, for example fourteen for model ORCA, the corresponding areas are initially put at 0 by the programs and procedures, corresponding to continent. In the file of bathymetry of model OPA, these islands are numbered with negative values. Once bathymetry to finalize, one can thus carry out this operation starting from procedure BATSAV. This algorithm rises from programs worked out by Anne-Marie Tréguier (LPO). |
| 580 | |
| 581 | |
| 582 | {{{IDL> batsav |
| 583 | |
| 584 | -> -> -> -> remplissage des iles, y ou n(implicit)? |
| 585 | |
| 586 | : y |
| 587 | |
| 588 | Remplissage des iles |
| 589 | |
| 590 | -> -> -> -> -> -> positionner et cliquer la souris |
| 591 | |
| 592 | si probleme : droite --> sortir |
| 593 | |
| 594 | -1 est valeur par defaut de l ile, OK, y or n ? |
| 595 | |
| 596 | |
| 597 | |
| 598 | }}} |
| 599 | |
| 600 | |