Changeset 3893 for trunk/LMDZ.GENERIC/libf/aeronostd
- Timestamp:
- Aug 13, 2025, 7:53:49 PM (5 months ago)
- Location:
- trunk/LMDZ.GENERIC/libf/aeronostd
- Files:
-
- 11 edited
-
calchim_asis.F90 (modified) (2 diffs)
-
chemistry_early_earth/calchim_asis_early_earth.F90 (modified) (35 diffs)
-
chemistry_early_earth/photochemistry_asis_early_earth.F90 (modified) (4 diffs)
-
chemistry_early_earth/read_phototable_early_earth.F90 (modified) (1 diff)
-
chimiedata_h.F90 (modified) (1 diff)
-
inv.F (modified) (2 diffs)
-
photochemistry_asis.F90 (modified) (19 diffs)
-
photolysis_mod.F90 (modified) (11 diffs)
-
photolysis_online.F (modified) (3 diffs)
-
read_phototable.F90 (modified) (2 diffs)
-
writediagspecUV.F (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.GENERIC/libf/aeronostd/calchim_asis.F90
r3725 r3893 182 182 do iq = 1,nq 183 183 if (is_chim(iq).eq.1 .and. mmol(iq).eq.0.) then 184 write(*,*) 'Error in calchim:' 185 write(*,*) 'Mmol cannot be equal to 0 for chemical species' 186 stop 184 call abort_physic("calchim","Mmol cannot be equal to 0 for chemical species",1) 187 185 end if 188 186 end do … … 453 451 write(*,*) "calchim: error reading line of tracers" 454 452 write(*,*) " (first lines of traceur.def) " 455 stop453 call abort_physic("calchim", "error reading line of tracers",1) 456 454 ENDIF 457 455 ENDDO 458 456 ENDIF ! if modern or standard traceur.def 459 457 else 460 write(*,*) "calchim: error opening traceur.def" 461 stop 458 call abort_physic("calchim", "Unable to open file traceur.def",1) 462 459 endif 463 460 -
trunk/LMDZ.GENERIC/libf/aeronostd/chemistry_early_earth/calchim_asis_early_earth.F90
r1810 r3893 206 206 i_co2 = igcm_co2 207 207 if (i_co2 == 0) then 208 write(*,*) "calchim: Error; no CO2 tracer !!!" 209 stop 208 call abort_physic("calchim_early_earth", "No CO2 tracer",1) 210 209 else 211 210 nbq = nbq + 1 … … 214 213 i_co = igcm_co 215 214 if (i_co == 0) then 216 write(*,*) "calchim: Error; no CO tracer !!!" 217 stop 215 call abort_physic("calchim_early_earth", "No CO tracer",1) 218 216 else 219 217 nbq = nbq + 1 … … 222 220 i_o = igcm_o 223 221 if (i_o == 0) then 224 write(*,*) "calchim: Error; no O tracer !!!" 225 stop 222 call abort_physic("calchim_early_earth", "No O tracer",1) 226 223 else 227 224 nbq = nbq + 1 … … 230 227 i_o1d = igcm_o1d 231 228 if (i_o1d == 0) then 232 write(*,*) "calchim: Error; no O1D tracer !!!" 233 stop 229 call abort_physic("calchim_early_earth", "No O1D tracer",1) 234 230 else 235 231 nbq = nbq + 1 … … 238 234 i_o2 = igcm_o2 239 235 if (i_o2 == 0) then 240 write(*,*) "calchim: Error; no O2 tracer !!!" 241 stop 236 call abort_physic("calchim_early_earth", "No O2 tracer",1) 242 237 else 243 238 nbq = nbq + 1 … … 246 241 i_o3 = igcm_o3 247 242 if (i_o3 == 0) then 248 write(*,*) "calchim: Error; no O3 tracer !!!" 249 stop 243 call abort_physic("calchim_early_earth", "No O3 tracer",1) 250 244 else 251 245 nbq = nbq + 1 … … 254 248 i_h = igcm_h 255 249 if (i_h == 0) then 256 write(*,*) "calchim: Error; no H tracer !!!" 257 stop 250 call abort_physic("calchim_early_earth", "No H tracer",1) 258 251 else 259 252 nbq = nbq + 1 … … 262 255 i_h2 = igcm_h2 263 256 if (i_h2 == 0) then 264 write(*,*) "calchim: Error; no H2 tracer !!!" 265 stop 257 call abort_physic("calchim_early_earth", "No H2 tracer",1) 266 258 else 267 259 nbq = nbq + 1 … … 270 262 i_oh = igcm_oh 271 263 if (i_oh == 0) then 272 write(*,*) "calchim: Error; no OH tracer !!!" 273 stop 264 call abort_physic("calchim_early_earth", "No OH tracer",1) 274 265 else 275 266 nbq = nbq + 1 … … 278 269 i_ho2 = igcm_ho2 279 270 if (i_ho2 == 0) then 280 write(*,*) "calchim: Error; no HO2 tracer !!!" 281 stop 271 call abort_physic("calchim_early_earth", "No HO2 tracer",1) 282 272 else 283 273 nbq = nbq + 1 … … 286 276 i_h2o2 = igcm_h2o2 287 277 if (i_h2o2 == 0) then 288 write(*,*) "calchim: Error; no H2O2 tracer !!!" 289 stop 278 call abort_physic("calchim_early_earth", "No H2O2 tracer",1) 290 279 else 291 280 nbq = nbq + 1 … … 294 283 i_h2o = igcm_h2o_vap 295 284 if (i_h2o == 0) then 296 write(*,*) "calchim: Error; no water vapor tracer !!!" 297 stop 285 call abort_physic("calchim_early_earth", "No water vapor tracer",1) 298 286 else 299 287 nbq = nbq + 1 … … 303 291 if (i_n == 0) then 304 292 if (photochem) then 305 write(*,*) "calchim: Error; no N tracer !!!"306 293 write(*,*) "N will be ignored in the chemistry" 307 stop294 call abort_physic("calchim_early_earth", "No N tracer",1) 308 295 end if 309 296 else … … 314 301 if (i_n2d == 0) then 315 302 if (photochem) then 316 write(*,*) "calchim: Error; no N2D tracer !!!"317 303 write(*,*) "N2d will be ignored in the chemistry" 318 stop304 call abort_physic("calchim_early_earth", "No N2D tracer",1) 319 305 end if 320 306 else … … 325 311 if (i_no == 0) then 326 312 if (photochem) then 327 write(*,*) "calchim: Error; no NO tracer !!!"328 313 write(*,*) "NO will be ignored in the chemistry" 329 stop314 call abort_physic("calchim_early_earth", "No NO tracer",1) 330 315 end if 331 316 else … … 336 321 if (i_no2 == 0) then 337 322 if (photochem) then 338 write(*,*) "calchim: Error; no NO2 tracer !!!"339 323 write(*,*) "NO2 will be ignored in the chemistry" 340 stop324 call abort_physic("calchim_early_earth", "No NO2 tracer",1) 341 325 end if 342 326 else … … 346 330 i_n2 = igcm_n2 347 331 if (i_n2 == 0) then 348 write(*,*) "calchim: Error; no N2 tracer !!!" 349 stop 332 call abort_physic("calchim_early_earth", "No N2 tracer",1) 350 333 else 351 334 nbq = nbq + 1 … … 354 337 i_ch4 = igcm_ch4 355 338 if (i_ch4 == 0) then 356 write(*,*) "calchim: Error; no CH4 tracer !!!" 357 stop 339 call abort_physic("calchim_early_earth", "No CH4 tracer",1) 358 340 else 359 341 nbq = nbq + 1 … … 362 344 i_ch3 = igcm_ch3 363 345 if (i_ch3 == 0) then 364 write(*,*) "calchim: Error; no ch3 tracer !!!" 365 stop 346 call abort_physic("calchim_early_earth", "No CH3 tracer",1) 366 347 else 367 348 nbq = nbq + 1 … … 370 351 i_ch = igcm_ch 371 352 if (i_ch == 0) then 372 write(*,*) "calchim: Error; no ch3 tracer !!!" 373 stop 353 call abort_physic("calchim_early_earth", "No CH tracer",1) 374 354 else 375 355 nbq = nbq + 1 … … 378 358 i_3ch2 = igcm_3ch2 379 359 if (i_3ch2 == 0) then 380 write(*,*) "calchim: Error; no 3ch2 tracer !!!" 381 stop 360 call abort_physic("calchim_early_earth", "No 3CH2 tracer",1) 382 361 else 383 362 nbq = nbq + 1 … … 386 365 i_1ch2 = igcm_1ch2 387 366 if (i_1ch2 == 0) then 388 write(*,*) "calchim: Error; no 1ch2 tracer !!!" 389 stop 367 call abort_physic("calchim_early_earth", "No 1CH2 tracer",1) 390 368 else 391 369 nbq = nbq + 1 … … 394 372 i_cho = igcm_cho 395 373 if (i_cho == 0) then 396 write(*,*) "calchim: Error; no cho tracer !!!" 397 stop 374 call abort_physic("calchim_early_earth", "No CHO tracer",1) 398 375 else 399 376 nbq = nbq + 1 … … 402 379 i_ch2o = igcm_ch2o 403 380 if (i_ch2o == 0) then 404 write(*,*) "calchim: Error; no ch2o tracer !!!" 405 stop 381 call abort_physic("calchim_early_earth", "No CH2O tracer",1) 406 382 else 407 383 nbq = nbq + 1 … … 410 386 i_ch3o = igcm_ch3o 411 387 if (i_ch3o == 0) then 412 write(*,*) "calchim: Error; no ch3o tracer !!!" 413 stop 388 call abort_physic("calchim_early_earth", "No CH3O tracer",1) 414 389 else 415 390 nbq = nbq + 1 … … 418 393 i_c = igcm_c 419 394 if (i_c == 0) then 420 write(*,*) "calchim: Error; no c tracer !!!" 421 stop 395 call abort_physic("calchim_early_earth", "No C tracer",1) 422 396 else 423 397 nbq = nbq + 1 … … 426 400 i_c2 = igcm_c2 427 401 if (i_c2 == 0) then 428 write(*,*) "calchim: Error; no c2 tracer !!!" 429 stop 402 call abort_physic("calchim_early_earth", "No C2 tracer",1) 430 403 else 431 404 nbq = nbq + 1 … … 434 407 i_c2h = igcm_c2h 435 408 if (i_c2h == 0) then 436 write(*,*) "calchim: Error; no c2h tracer !!!" 437 stop 409 call abort_physic("calchim_early_earth", "No C2H tracer",1) 438 410 else 439 411 nbq = nbq + 1 … … 442 414 i_c2h2 = igcm_c2h2 443 415 if (i_c2h2 == 0) then 444 write(*,*) "calchim: Error; no c2h2 tracer !!!" 445 stop 416 call abort_physic("calchim_early_earth", "No C2H2 tracer",1) 446 417 else 447 418 nbq = nbq + 1 … … 450 421 i_c2h3 = igcm_c2h3 451 422 if (i_c2h3 == 0) then 452 write(*,*) "calchim: Error; no c2h3 tracer !!!" 453 stop 423 call abort_physic("calchim_early_earth", "No C2H3 tracer",1) 454 424 else 455 425 nbq = nbq + 1 … … 458 428 i_c2h4 = igcm_c2h4 459 429 if (i_c2h4 == 0) then 460 write(*,*) "calchim: Error; no c2h4 tracer !!!" 461 stop 430 call abort_physic("calchim_early_earth", "No C2H4 tracer",1) 462 431 else 463 432 nbq = nbq + 1 … … 466 435 i_c2h6 = igcm_c2h6 467 436 if (i_c2h6 == 0) then 468 write(*,*) "calchim: Error; no c2h6 tracer !!!" 469 stop 437 call abort_physic("calchim_early_earth", "No C2H6 tracer",1) 470 438 else 471 439 nbq = nbq + 1 … … 474 442 i_ch2co = igcm_ch2co 475 443 if (i_ch2co == 0) then 476 write(*,*) "calchim: Error; no ch2co tracer !!!" 477 stop 444 call abort_physic("calchim_early_earth", "No CH2CO tracer",1) 478 445 else 479 446 nbq = nbq + 1 … … 482 449 i_ch3co = igcm_ch3co 483 450 if (i_ch3co == 0) then 484 write(*,*) "calchim: Error; no ch3co tracer !!!" 485 stop 451 call abort_physic("calchim_early_earth", "No CH3CO tracer",1) 486 452 else 487 453 nbq = nbq + 1 … … 490 456 i_hcaer = igcm_hcaer 491 457 if (i_hcaer == 0) then 492 write(*,*) "calchim: Error; no hcaer tracer !!!" 493 stop 458 call abort_physic("calchim_early_earth", "No hcaer tracer",1) 494 459 else 495 460 nbq = nbq + 1 -
trunk/LMDZ.GENERIC/libf/aeronostd/chemistry_early_earth/photochemistry_asis_early_earth.F90
r1810 r3893 275 275 #else 276 276 # write(*,*) "photochemistry_asis error, missing LAPACK routine dgesv" 277 # stop277 # call abort_physic("photochemistry_early_earth", "missing LAPACK routine dgesv",1) 278 278 #endif 279 279 … … 399 399 call dgesv(nesp,1,mat,nesp,indx,cnew,nesp,code) 400 400 #else 401 write(*,*) "photochemistry_asis error, missing LAPACK routine dgesv" 402 stop 401 call abort_physic("photochemistry_early_earth", "missing LAPACK routine dgesv",1) 403 402 #endif 404 403 … … 3320 3319 print*, 'nb_reaction_4_max = ', nb_reaction_4_max 3321 3320 print*, 'nb_reaction_3_max = ', nb_reaction_3_max 3322 stop3321 call abort_physic("photochemistry_early_earth", "wrong dimensions in indice",1) 3323 3322 end if 3324 3323 … … 3395 3394 3396 3395 if (igcm_co2 == 0) then 3397 write(*,*) "gcmtochim: Error; no CO2 tracer !!!" 3398 stop 3396 call abort_physic("phochemistry_early_earth", "no CO2 tracer", 1) 3399 3397 endif 3400 3398 if (igcm_co == 0) then 3401 write(*,*) "gcmtochim: Error; no CO tracer !!!" 3402 stop 3399 call abort_physic("phochemistry_early_earth", "no CO tracer", 1) 3403 3400 end if 3404 3401 if (igcm_o == 0) then 3405 write(*,*) "gcmtochim: Error; no O tracer !!!" 3406 stop 3402 call abort_physic("phochemistry_early_earth", "no O tracer", 1) 3407 3403 end if 3408 3404 if (igcm_o1d == 0) then 3409 write(*,*) "gcmtochim: Error; no O1D tracer !!!" 3410 stop 3405 call abort_physic("phochemistry_early_earth", "no O1D tracer", 1) 3411 3406 end if 3412 3407 if (igcm_o2 == 0) then 3413 write(*,*) "gcmtochim: Error; no O2 tracer !!!" 3414 stop 3408 call abort_physic("phochemistry_early_earth", "no O2 tracer", 1) 3415 3409 end if 3416 3410 if (igcm_o3 == 0) then 3417 write(*,*) "gcmtochim: Error; no O3 tracer !!!" 3418 stop 3411 call abort_physic("phochemistry_early_earth", "no O3 tracer", 1) 3419 3412 end if 3420 3413 if (igcm_h == 0) then 3421 write(*,*) "gcmtochim: Error; no H tracer !!!" 3422 stop 3414 call abort_physic("phochemistry_early_earth", "no H tracer", 1) 3423 3415 end if 3424 3416 if (igcm_h2 == 0) then 3425 write(*,*) "gcmtochim: Error; no H2 tracer !!!" 3426 stop 3417 call abort_physic("phochemistry_early_earth", "no H2 tracer", 1) 3427 3418 end if 3428 3419 if (igcm_oh == 0) then 3429 write(*,*) "gcmtochim: Error; no OH tracer !!!" 3430 stop 3420 call abort_physic("phochemistry_early_earth", "no OH tracer", 1) 3431 3421 end if 3432 3422 if (igcm_ho2 == 0) then 3433 write(*,*) "gcmtochim: Error; no HO2 tracer !!!" 3434 stop 3423 call abort_physic("phochemistry_early_earth", "no HO2 tracer", 1) 3435 3424 end if 3436 3425 if (igcm_h2o2 == 0) then 3437 write(*,*) "gcmtochim: Error; no H2O2 tracer !!!" 3438 stop 3426 call abort_physic("phochemistry_early_earth", "no H2O2 tracer", 1) 3439 3427 end if 3440 3428 if (igcm_n == 0) then 3441 write(*,*) "gcmtochim: Error; no N tracer !!!" 3442 stop 3429 call abort_physic("phochemistry_early_earth", "no N tracer", 1) 3443 3430 end if 3444 3431 if (igcm_n2d == 0) then 3445 write(*,*) "gcmtochim: Error; no N2D tracer !!!" 3446 stop 3432 call abort_physic("phochemistry_early_earth", "no N2D tracer", 1) 3447 3433 end if 3448 3434 if (igcm_no == 0) then 3449 write(*,*) "gcmtochim: Error; no NO tracer !!!" 3450 stop 3435 call abort_physic("phochemistry_early_earth", "no NO tracer", 1) 3451 3436 end if 3452 3437 if (igcm_no2 == 0) then 3453 write(*,*) "gcmtochim: Error; no NO2 tracer !!!" 3454 stop 3438 call abort_physic("phochemistry_early_earth", "no NO2 tracer", 1) 3455 3439 end if 3456 3440 if (igcm_n2 == 0) then 3457 write(*,*) "gcmtochim: Error; no N2 tracer !!!" 3458 stop 3441 call abort_physic("phochemistry_early_earth", "no N2 tracer", 1) 3459 3442 end if 3460 3443 if (igcm_h2o_vap == 0) then 3461 write(*,*) "gcmtochim: Error; no water vapor tracer !!!" 3462 stop 3444 call abort_physic("phochemistry_early_earth", "no water vapor tracer", 1) 3463 3445 end if 3464 3446 3465 3447 if (igcm_ch4 == 0) then 3466 write(*,*) "gcmtochim: Error; no CH4 tracer !!!" 3467 stop 3448 call abort_physic("phochemistry_early_earth", "no CH4 tracer", 1) 3468 3449 end if 3469 3450 if (igcm_ch3 == 0) then 3470 write(*,*) "gcmtochim: Error; no CH3 tracer !!!" 3471 stop 3451 call abort_physic("phochemistry_early_earth", "no CH3 tracer", 1) 3472 3452 end if 3473 3453 if (igcm_ch == 0) then 3474 write(*,*) "gcmtochim: Error; no CH tracer !!!" 3475 stop 3454 call abort_physic("phochemistry_early_earth", "no CH tracer", 1) 3476 3455 end if 3477 3456 if (igcm_3ch2 == 0) then 3478 write(*,*) "gcmtochim: Error; no 3CH2 tracer !!!" 3479 stop 3457 call abort_physic("phochemistry_early_earth", "no 3CH2 tracer", 1) 3480 3458 end if 3481 3459 if (igcm_1ch2 == 0) then 3482 write(*,*) "gcmtochim: Error; no 1CH2 tracer !!!" 3483 stop 3460 call abort_physic("phochemistry_early_earth", "no 1CH2 tracer", 1) 3484 3461 end if 3485 3462 if (igcm_cho == 0) then 3486 write(*,*) "gcmtochim: Error; no CHO tracer !!!" 3487 stop 3463 call abort_physic("phochemistry_early_earth", "no CHO tracer", 1) 3488 3464 end if 3489 3465 if (igcm_ch2o == 0) then 3490 write(*,*) "gcmtochim: Error; no CH2O tracer !!!" 3491 stop 3466 call abort_physic("phochemistry_early_earth", "no CH2O tracer", 1) 3492 3467 end if 3493 3468 if (igcm_ch3o == 0) then 3494 write(*,*) "gcmtochim: Error; no CH3O tracer !!!" 3495 stop 3469 call abort_physic("phochemistry_early_earth", "no CH3O tracer", 1) 3496 3470 end if 3497 3471 if (igcm_c == 0) then 3498 write(*,*) "gcmtochim: Error; no C tracer !!!" 3499 stop 3472 call abort_physic("phochemistry_early_earth", "no C tracer", 1) 3500 3473 end if 3501 3474 if (igcm_c2 == 0) then 3502 write(*,*) "gcmtochim: Error; no C2 tracer !!!" 3503 stop 3475 call abort_physic("phochemistry_early_earth", "no C2 tracer", 1) 3504 3476 end if 3505 3477 if (igcm_c2h == 0) then 3506 write(*,*) "gcmtochim: Error; no C2H tracer !!!" 3507 stop 3478 call abort_physic("phochemistry_early_earth", "no C2H tracer", 1) 3508 3479 end if 3509 3480 if (igcm_c2h2 == 0) then 3510 write(*,*) "gcmtochim: Error; no C2H2 tracer !!!" 3511 stop 3481 call abort_physic("phochemistry_early_earth", "no C2H2 tracer", 1) 3512 3482 end if 3513 3483 if (igcm_c2h3 == 0) then 3514 write(*,*) "gcmtochim: Error; no C2H3 tracer !!!" 3515 stop 3484 call abort_physic("phochemistry_early_earth", "no C2H3 tracer", 1) 3516 3485 end if 3517 3486 if (igcm_c2h4 == 0) then 3518 write(*,*) "gcmtochim: Error; no C2H4 tracer !!!" 3519 stop 3487 call abort_physic("phochemistry_early_earth", "no C2H4 tracer", 1) 3520 3488 end if 3521 3489 if (igcm_c2h6 == 0) then 3522 write(*,*) "gcmtochim: Error; no C2H6 tracer !!!" 3523 stop 3490 call abort_physic("phochemistry_early_earth", "no C2H6 tracer", 1) 3524 3491 end if 3525 3492 if (igcm_ch2co == 0) then 3526 write(*,*) "gcmtochim: Error; no CH2CO tracer !!!" 3527 stop 3493 call abort_physic("phochemistry_early_earth", "no CH2CO tracer", 1) 3528 3494 end if 3529 3495 if (igcm_ch3co == 0) then 3530 write(*,*) "gcmtochim: Error; no CH3CO tracer !!!" 3531 stop 3496 call abort_physic("phochemistry_early_earth", "no CH3CO tracer", 1) 3532 3497 end if 3533 3498 if (igcm_hcaer == 0) then 3534 write(*,*) "gcmtochim: Error; no HCAER tracer !!!" 3535 stop 3499 call abort_physic("phochemistry_early_earth", "no hcaer tracer", 1) 3536 3500 end if 3537 3501 -
trunk/LMDZ.GENERIC/libf/aeronostd/chemistry_early_earth/read_phototable_early_earth.F90
r1796 r3893 64 64 write(*,*)' callphys.def with:' 65 65 write(*,*)' phototable=filename' 66 stop66 call abort_physic("read_phototable_early_earth", "cannot open photolysis lookup table",1) 67 67 end if 68 68 -
trunk/LMDZ.GENERIC/libf/aeronostd/chimiedata_h.F90
r3309 r3893 542 542 print*, 'Check if the specie ', trim(traceurname),' is a chemical species' 543 543 print*, '(option is_chim = 1)' 544 call abort 544 call abort_physic("chimiedata", "Wrong traceur name", 1) 545 545 end if 546 546 -
trunk/LMDZ.GENERIC/libf/aeronostd/inv.F
r1796 r3893 26 26 enddo 27 27 if (AAMAX.EQ.0.) then 28 write(*,*) 'Singular matrix.' 29 stop 28 call abort_physic("inv.F","Singular matrix",1) 30 29 endif 31 30 VV(I,1)=1./AAMAX … … 68 67 INDX(J)=IMAX 69 68 if(abs(A(J,J)).LT.TINY) then 70 write(*,*) 'Pivot too small.' 71 stop 69 call abort_physic("inv.F", "Pivot too small",1) 72 70 endif 73 71 IF(J.NE.N)THEN -
trunk/LMDZ.GENERIC/libf/aeronostd/photochemistry_asis.F90
r3701 r3893 132 132 print*,'set jonline=.false. in callphys.def' 133 133 print*,'or set photolysis reactions in monoreact file' 134 call abort 134 call abort_physic("photochemistry","Jonline cannot run without photolysis",1) 135 135 end if 136 136 call init_photolysis(nlayer,nreact) ! on-line photolysis … … 296 296 call dgesv(nesp,1,mat,nesp,indx,cnew,nesp,code) 297 297 #else 298 write(*,*) "photochemistry_asis error, missing LAPACK routine dgesv" 299 call abort 298 call abort_physic("photochemistry","missing LAPACK routine dgesv",1) 300 299 #endif 301 300 … … 412 411 call dgesv(nesp,1,mat,nesp,indx,cnew,nesp,code) 413 412 #else 414 write(*,*) "photochemistry_asis error, missing LAPACK routine dgesv" 415 call abort 413 call abort_physic("photochemistry","missing LAPACK routine dgesv",1) 416 414 #endif 417 415 … … 568 566 print*, 'Please check the reaction ',ireact 569 567 if (ireact>nreact) print*, 'Please check the reaction count into the code beacause ireact > nreact is not possible' 570 call abort 568 call abort_physic("photochemistry","ireact>nreact is not possible",1) 571 569 end if 572 570 … … 599 597 print*, 'Please check the reaction ',ireact 600 598 if (ireact>nreact) print*, 'Please check the reaction count into the code beacause ireact > nreact is not possible' 601 call abort 599 call abort_physic("photochemistry","ireact>nreact is not possible",1) 602 600 end if 603 601 … … 625 623 print*, 'n4_hard_coding = ', n4_hard_coding 626 624 print*, 'n3_hard_coding = ', n3_hard_coding 627 call abort 625 call abort_physic("photochemistry","wrong dimensions in reactionrates",1) 628 626 end if 629 627 if ((nb_hv /= nb_hv_max) .or. & … … 640 638 print*, 'nb_pfunc2_max = ', nb_pfunc2_max 641 639 print*, 'nb_pfunc3_max = ', nb_pfunc3_max 642 call abort 640 call abort_physic("photochemistry","wrong dimensions in reaction rates",1) 643 641 end if 644 642 firstcall = .false. … … 913 911 print*, 'WARNING: ', chemnoms(iq),' is only destroy' 914 912 else 915 print*, 'Error in indice: bad value in specheckr or specheckp' 916 call abort 913 call abort_physic("photochemistry", "Error in indice: bad value in specheckr or specheckp",1) 917 914 end if 918 915 end if … … 950 947 print*, 'nb_phot_hv_max = ', nb_phot_hv_max 951 948 print*, 'nb_hv_max = ', nb_hv_max 952 call abort 949 call abort_physic("photochemistry","wrong dimensions in indice",1) 953 950 end if 954 951 … … 1079 1076 n = n + 1 1080 1077 if (n>nmax) then 1081 print*,'Error in split_str: to much words'1078 print*,'Error in split_str: too much words' 1082 1079 print*,'limit = ',nmax 1083 1080 print*,'change it, if you want, with increasing nmax' 1084 1081 print*,'line is:',line 1085 call abort 1082 call abort_physic("photochemistry","too much words in split_str",1) 1086 1083 end if 1087 1084 read(line,*,iostat=ios) buf(1:n) ! use list-directed input … … 1141 1138 vtype = "v4" 1142 1139 else 1143 print*,'Error in photochemistry_asis (find_vtype):' 1144 print*,'3 different reactants not implemented' 1145 call abort 1140 call abort_physic("photochemistry","(find_vtype): 3 different reactants not implemented",1) 1146 1141 end if 1147 1142 else 1148 print*,'Error in photochemistry_asis (find_vtype):' 1149 print*,'more than 2 different reactants not implemented' 1150 call abort 1143 call abort_physic("photochemistry","(find_vtype): more than 2 different reactants not implemented",1) 1151 1144 end if 1152 1145 … … 1192 1185 write(*,*)'28/03/2025: New default value is network.def (in simulation folder)' 1193 1186 write(*,*)'Former default is chemnetwork/reactfile' 1194 call abort 1187 call abort_physic("photochemistry","Unable to open chemical reaction file",1) 1195 1188 end if 1196 1189 … … 1227 1220 .and. trim(words(2))/=trim(words(3))) nb_reaction_3 = nb_reaction_3 + 1 1228 1221 else 1229 print*,'Error in photochemistry_asis (count_react):' 1230 print*,'vtype not found' 1231 call abort 1222 call abort_physic("photochemistry","(count_react): vtype not found",1) 1232 1223 end if 1233 1224 … … 1250 1241 print*, 'It should be 0 for photolysis reations and 1 or 2 for the others' 1251 1242 print*, 'And not : ', typerate 1252 call abort 1243 call abort_physic("photochemistry","wrong index coefficient rate line",1) 1253 1244 end if 1254 1245 … … 1314 1305 write(*,*)'28/03/2025: New default value is network.def (in simulation folder)' 1315 1306 write(*,*)'Former default is chemnetwork/reactfile' 1316 call abort 1307 call abort_physic("photochemistry","Unable to open chemical reaction file",1) 1317 1308 end if 1318 1309 … … 1337 1328 nb_phot = nb_phot + 1 1338 1329 else 1339 print*,'Error in photochemistry_asis (get_react):' 1340 print*,'vtype not found' 1341 call abort 1330 call abort_physic("photochemistry","(get_react): vtype not found",1) 1342 1331 end if 1343 1332 … … 1345 1334 if (trim(paramline)=='') then 1346 1335 print*, 'Error in reactfile: where are the parameters - line',ilines 1347 call abort 1336 call abort_physic("photochemistry","Error in reactfile, the parameters - line not found",1) 1348 1337 else 1349 1338 read(paramline,*) reactions(ireact)%rtype … … 1393 1382 else 1394 1383 print*, 'Error in reactfile: just only one specie can be after M corresponding to the third body - line',ilines 1395 call abort 1384 call abort_physic("Error in reactfile","just only one specie can be after M corresponding to the third body - line",1) 1396 1385 end if 1397 1386 end if … … 1509 1498 print*,'Error in photochemistry_asis (get_react):' 1510 1499 print*,'vtype',reactions(ireact)%vtype,' not implemented' 1511 call abort 1500 call abort_physic("Error in photochemistry_asis (get_react)", "vtype',reactions(ireact)%vtype,' not implemented",1) 1512 1501 end if 1513 1502 -
trunk/LMDZ.GENERIC/libf/aeronostd/photolysis_mod.F90
r3370 r3893 446 446 write(*,*)' callphys.def with:' 447 447 write(*,*)' gridwfile=filename' 448 stop448 call abort_physic("photolysis","cannot open wavelenght grid file",1) 449 449 end if 450 450 … … 528 528 write(*,*)' callphys.def with:' 529 529 write(*,*)' stellarflux=filename' 530 stop530 call abort_physic("photolysis", "cannot open stellarflux file",1) 531 531 end if 532 532 … … 562 562 IF (ierr .NE. 0) THEN 563 563 WRITE(*,*) ierr, fil 564 STOP564 call abort_physic("photolysis","cannot open stellarflux file",1) 565 565 ENDIF 566 566 … … 621 621 WRITE(0,*) '>>> ERROR (ADDPNT) <<< Cannot expand array ' 622 622 WRITE(0,*) ' All elements used.' 623 STOP623 call abort_physic("photolysis","cannot expand array ADDPNT, all elements used",1) 624 624 ENDIF 625 625 … … 636 636 print*, x(i-1), x(i) 637 637 WRITE(0,*) '>>> ERROR (ADDPNT) <<< x-data must be in ascending order!' 638 STOP638 call abort_physic("photolysis", "ADDPNT: x-data must be in ascending order",1) 639 639 ELSE 640 640 IF (xnew .GT. x(i)) insert = i + 1 … … 752 752 WRITE(0,*) '>>> ERROR (inter2) <<< Data do not span grid. ' 753 753 WRITE(0,*) ' Use ADDPNT to expand data and re-run.' 754 STOP754 call abort_physic("photolysis","inter2: Data do not span grid",1) 755 755 ENDIF 756 756 … … 892 892 print*, ' has to be sorted from low to high values' 893 893 print*, ' Check reactfile file' 894 stop894 call abort_physic("photolysis", "temperature cross section file has to be sorted from low to high values",1) 895 895 end if 896 896 end do … … 913 913 write(*,*)'3) You can change the input cross_sections file name in' 914 914 write(*,*)' chemestry/reactfile file for the specie:',trim(species) 915 stop915 call abort_physic("photolysis", "cannot open cross_sections file",1) 916 916 end if 917 917 … … 947 947 IF (ierr .NE. 0) THEN 948 948 WRITE(*,*) ierr, fil 949 STOP949 call abort_physic("photolysis", "inter2 error",1) 950 950 ENDIF 951 951 … … 970 970 write(*,*)'3) You can change the input photodissociation yield file name in' 971 971 write(*,*)' chemestry/reactfile file for the specie:',trim(species) 972 stop972 call abort_physic("photolysis", "cannot open photodissociation yield file",1) 973 973 end if 974 974 … … 1003 1003 IF (ierr .NE. 0) THEN 1004 1004 WRITE(*,*) ierr, fil 1005 STOP1005 call abort_physic("photolysis", "inter2 error",1) 1006 1006 ENDIF 1007 1007 -
trunk/LMDZ.GENERIC/libf/aeronostd/photolysis_online.F
r3309 r3893 1139 1139 !_______________________________________________________________________ 1140 1140 1141 IF (b(1) .EQ. 0.) STOP 10011141 IF (b(1).EQ.0.) call abort_physic("photolysis_online","b(1)=0",1) 1142 1142 bet = b(1) 1143 1143 u(1) = r(1)/bet … … 1145 1145 gam(j) = c(j - 1)/bet 1146 1146 bet = b(j) - a(j)*gam(j) 1147 IF (bet .EQ. 0.) STOP 20021147 IF (bet.EQ.0.) call abort_physic("photolysis_online","bet=0",1) 1148 1148 u(j) = (r(j) - a(j)*u(j - 1))/bet 1149 1149 11 CONTINUE … … 1288 1288 else 1289 1289 1290 print*,'Surface type not recognised in photolysis_online.F!' 1291 print*,'Exiting...' 1292 call abort 1290 call abort_physic("photolysis_online", 1291 & "Surface type not recognised",1) 1293 1292 1294 1293 endif -
trunk/LMDZ.GENERIC/libf/aeronostd/read_phototable.F90
r2542 r3893 68 68 write(*,*)' callphys.def with:' 69 69 write(*,*)' phototable=filename' 70 stop70 call abort_physic("read_phototable","cannot open photolysis lookup table",1) 71 71 end if 72 72 … … 138 138 write(*,*)' callphys.def with:' 139 139 write(*,*)' ephototable=filename' 140 stop140 call abort_physic("read_phototable", "cannot open energie photolysis lookup table",1) 141 141 end if 142 142 -
trunk/LMDZ.GENERIC/libf/aeronostd/writediagspecUV.F
r3725 r3893 108 108 write(*,*) " firstnom string not long enough!!" 109 109 write(*,*) " increase its size to at least ",len_trim(nom) 110 stop 110 call abort_physic("writediagspecUV", 111 & "firstnom string not long enough",1) 111 112 endif 112 113 … … 307 308 write(*,*) "***** with ",nom 308 309 write(*,*) 'ierr=', ierr 309 call abort 310 call abort_physic("writediagspecUV","PUT_VAR problem", 1) 310 311 endif 311 312
Note: See TracChangeset
for help on using the changeset viewer.
