- Timestamp:
- Mar 11, 2020 12:20:29 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/netcdf_interface_mod.f90
r4400 r4455 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Axis attribute added to netcdf output 28 ! 29 ! 4400 2020-02-10 20:32:41Z suehring 27 30 ! Move routine to transform coordinates from netcdf_interface_mod to 28 31 ! basic_constants_and_equations_mod … … 736 739 '1', 'grid point above terrain', & 737 740 471, 472, 000 ) 741 CALL netcdf_create_att( id_set_mask(mid,av), & 742 id_var_zu_mask(mid,av), 'axis', 'Z', 000) 743 738 744 CALL netcdf_create_dim( id_set_mask(mid,av), 'kw_above_surf', & 739 745 mask_size(mid,3), id_dim_zw_mask(mid,av), & … … 745 751 '1', 'grid point above terrain', & 746 752 474, 475, 000 ) 753 CALL netcdf_create_att( id_set_mask(mid,av), & 754 id_var_zw_mask(mid,av), 'axis', 'Z', 000) 747 755 ELSE 748 756 ! … … 755 763 NF90_DOUBLE, id_var_zu_mask(mid,av), & 756 764 'meters', '', 471, 472, 000 ) 765 CALL netcdf_create_att( id_set_mask(mid,av), & 766 id_var_zu_mask(mid,av), 'axis', 'Z', 000) 757 767 ! 758 768 !-- Define vertical coordinate grid (zw grid) … … 764 774 NF90_DOUBLE, id_var_zw_mask(mid,av), & 765 775 'meters', '', 474, 475, 000 ) 776 CALL netcdf_create_att( id_set_mask(mid,av), & 777 id_var_zw_mask(mid,av), 'axis', 'Z', 000) 766 778 ENDIF 767 779 ! … … 773 785 NF90_DOUBLE, id_var_x_mask(mid,av), & 774 786 'meters', '', 477, 478, 000 ) 787 CALL netcdf_create_att( id_set_mask(mid,av), id_var_x_mask(mid,av), & 788 'axis', 'X', 000) 775 789 ! 776 790 !-- Define x-axis (for u position) … … 781 795 NF90_DOUBLE, id_var_xu_mask(mid,av), & 782 796 'meters', '', 480, 481, 000 ) 797 CALL netcdf_create_att( id_set_mask(mid,av), id_var_xu_mask(mid,av), & 798 'axis', 'X', 000) 783 799 ! 784 800 !-- Define y-axis (for scalar position) … … 789 805 NF90_DOUBLE, id_var_y_mask(mid,av), & 790 806 'meters', '', 483, 484, 000 ) 807 CALL netcdf_create_att( id_set_mask(mid,av), id_var_y_mask(mid,av), & 808 'axis', 'Y', 000) 791 809 ! 792 810 !-- Define y-axis (for v position) … … 797 815 'yv', NF90_DOUBLE, id_var_yv_mask(mid,av), & 798 816 'meters', '', 486, 487, 000 ) 817 CALL netcdf_create_att( id_set_mask(mid,av), id_var_yv_mask(mid,av), & 818 'axis', 'Y', 000) 799 819 ! 800 820 !-- Define UTM and geographic coordinates … … 840 860 NF90_DOUBLE, id_var_zs_mask(mid,av), & 841 861 'meters', '', 537, 555, 000 ) 862 CALL netcdf_create_att( id_set_mask(mid,av), & 863 id_var_zs_mask(mid,av), 'axis', 'Z', 000) 842 864 ENDIF 843 865 … … 1496 1518 'zu_3d', NF90_DOUBLE, id_var_zu_3d(av), & 1497 1519 'meters', '', 68, 69, 00 ) 1520 CALL netcdf_create_att( id_set_3d(av), id_var_zu_3d(av), 'axis', & 1521 'Z', 000) 1498 1522 ! 1499 1523 !-- Define vertical coordinate grid (zw grid) … … 1503 1527 'zw_3d', NF90_DOUBLE, id_var_zw_3d(av), & 1504 1528 'meters', '', 71, 72, 00 ) 1529 CALL netcdf_create_att( id_set_3d(av), id_var_zw_3d(av), 'axis', & 1530 'Z', 000) 1505 1531 ! 1506 1532 !-- Define x-axis (for scalar position) … … 1510 1536 NF90_DOUBLE, id_var_x_3d(av), 'meters', '', & 1511 1537 74, 75, 00 ) 1538 CALL netcdf_create_att( id_set_3d(av), id_var_x_3d(av), 'axis', & 1539 'X', 000) 1512 1540 ! 1513 1541 !-- Define x-axis (for u position) … … 1517 1545 NF90_DOUBLE, id_var_xu_3d(av), 'meters', '', & 1518 1546 359, 360, 000 ) 1547 CALL netcdf_create_att( id_set_3d(av), id_var_xu_3d(av), 'axis', & 1548 'X', 000) 1519 1549 ! 1520 1550 !-- Define y-axis (for scalar position) … … 1524 1554 NF90_DOUBLE, id_var_y_3d(av), 'meters', '', & 1525 1555 77, 78, 00 ) 1556 CALL netcdf_create_att( id_set_3d(av), id_var_y_3d(av), 'axis', & 1557 'Y', 000) 1526 1558 ! 1527 1559 !-- Define y-axis (for v position) … … 1531 1563 NF90_DOUBLE, id_var_yv_3d(av), 'meters', '', & 1532 1564 362, 363, 000 ) 1565 CALL netcdf_create_att( id_set_3d(av), id_var_yv_3d(av), 'axis', & 1566 'Y', 000) 1533 1567 ! 1534 1568 !-- Define UTM and geographic coordinates … … 1570 1604 'zs_3d', NF90_DOUBLE, id_var_zs_3d(av), & 1571 1605 'meters', '', 71, 72, 00 ) 1606 CALL netcdf_create_att( id_set_3d(av), id_var_zs_3d(av), 'axis', & 1607 'Z', 000) 1572 1608 1573 1609 ENDIF … … 1579 1615 pch_index+1, id_dim_zpc_3d(av), 70 ) 1580 1616 !netcdf_create_dim(ncid, dim_name, ncdim_type, ncdim_id, error_no) 1581 CALL netcdf_create_var( id_set_3d(av), (/ id_dim_zpc_3d(av) /), 1582 'zpc_3d', NF90_DOUBLE, id_var_zpc_3d(av), 1617 CALL netcdf_create_var( id_set_3d(av), (/ id_dim_zpc_3d(av) /), & 1618 'zpc_3d', NF90_DOUBLE, id_var_zpc_3d(av), & 1583 1619 'meters', '', 71, 72, 00 ) 1620 CALL netcdf_create_att( id_set_3d(av), id_var_zpc_3d(av), 'axis', & 1621 'Z', 000) 1584 1622 1585 1623 ENDIF … … 2480 2518 'zu_xy', NF90_DOUBLE, id_var_zu_xy(av), & 2481 2519 'meters', '', 103, 104, 000 ) 2520 CALL netcdf_create_att( id_set_xy(av), id_var_zu_xy(av), 'axis', & 2521 'Z', 000) 2482 2522 ! 2483 2523 !-- Define vertical coordinate grid (zw grid) … … 2487 2527 'zw_xy', NF90_DOUBLE, id_var_zw_xy(av), & 2488 2528 'meters', '', 106, 107, 000 ) 2529 CALL netcdf_create_att( id_set_xy(av), id_var_zw_xy(av), 'axis', & 2530 'Z', 000) 2489 2531 2490 2532 IF ( land_surface ) THEN … … 2501 2543 'zs_xy', NF90_DOUBLE, id_var_zs_xy(av), & 2502 2544 'meters', '', 540, 541, 000 ) 2545 CALL netcdf_create_att( id_set_xy(av), id_var_zs_xy(av), 'axis', & 2546 'Z', 000) 2503 2547 2504 2548 ENDIF … … 2512 2556 'zu1_xy', NF90_DOUBLE, id_var_zu1_xy(av), & 2513 2557 'meters', '', 109, 110, 000 ) 2558 CALL netcdf_create_att( id_set_xy(av), id_var_zu1_xy(av), 'axis', & 2559 'Z', 000) 2514 2560 ! 2515 2561 !-- Define a variable to store the layer indices of the horizontal cross … … 2526 2572 NF90_DOUBLE, id_var_x_xy(av), 'meters', '', & 2527 2573 114, 115, 000 ) 2574 CALL netcdf_create_att( id_set_xy(av), id_var_x_xy(av), 'axis', & 2575 'X', 000) 2528 2576 ! 2529 2577 !-- Define x-axis (for u position) … … 2533 2581 NF90_DOUBLE, id_var_xu_xy(av), 'meters', '', & 2534 2582 389, 390, 000 ) 2583 CALL netcdf_create_att( id_set_xy(av), id_var_xu_xy(av), 'axis', & 2584 'X', 000) 2535 2585 ! 2536 2586 !-- Define y-axis (for scalar position) … … 2540 2590 NF90_DOUBLE, id_var_y_xy(av), 'meters', '', & 2541 2591 117, 118, 000 ) 2592 CALL netcdf_create_att( id_set_xy(av), id_var_y_xy(av), 'axis', & 2593 'Y', 000) 2542 2594 ! 2543 2595 !-- Define y-axis (for scalar position) … … 2547 2599 NF90_DOUBLE, id_var_yv_xy(av), 'meters', '', & 2548 2600 365, 366, 000 ) 2601 CALL netcdf_create_att( id_set_xy(av), id_var_yv_xy(av), 'axis', & 2602 'Y', 000) 2549 2603 ! 2550 2604 !-- Define UTM and geographic coordinates … … 3437 3491 'y_xz', NF90_DOUBLE, id_var_y_xz(av), & 3438 3492 'meters', '', 146, 147, 000 ) 3493 CALL netcdf_create_att( id_set_xz(av), id_var_y_xz(av), 'axis', & 3494 'Y', 000) 3439 3495 ! 3440 3496 !-- Define y-axis (for v position) … … 3444 3500 'yv_xz', NF90_DOUBLE, id_var_yv_xz(av), & 3445 3501 'meters', '', 370, 371, 000 ) 3502 CALL netcdf_create_att( id_set_xz(av), id_var_yv_xz(av), 'axis', & 3503 'Y', 000) 3446 3504 ! 3447 3505 !-- Define a variable to store the layer indices of the vertical cross … … 3458 3516 NF90_DOUBLE, id_var_x_xz(av), 'meters', '', & 3459 3517 151, 152, 000 ) 3518 CALL netcdf_create_att( id_set_xz(av), id_var_x_xz(av), 'axis', & 3519 'X', 000) 3460 3520 ! 3461 3521 !-- Define x-axis (for u position) … … 3465 3525 NF90_DOUBLE, id_var_xu_xz(av), 'meters', '', & 3466 3526 373, 374, 000 ) 3527 CALL netcdf_create_att( id_set_xz(av), id_var_xu_xz(av), 'axis', & 3528 'X', 000) 3529 3467 3530 ! 3468 3531 !-- Define the three z-axes (zu, zw, and zs) … … 3472 3535 NF90_DOUBLE, id_var_zu_xz(av), 'meters', '', & 3473 3536 154, 155, 000 ) 3537 CALL netcdf_create_att( id_set_xz(av), id_var_zu_xz(av), 'axis', & 3538 'Z', 000) 3539 3474 3540 CALL netcdf_create_dim( id_set_xz(av), 'zw', nz+2, id_dim_zw_xz(av), & 3475 3541 156 ) … … 3477 3543 NF90_DOUBLE, id_var_zw_xz(av), 'meters', '', & 3478 3544 157, 158, 000 ) 3545 CALL netcdf_create_att( id_set_xz(av), id_var_zw_xz(av), 'axis', & 3546 'Z', 000) 3479 3547 ! 3480 3548 !-- Define UTM and geographic coordinates … … 3495 3563 'zs', NF90_DOUBLE, id_var_zs_xz(av), & 3496 3564 'meters', '', 543, 544, 000 ) 3565 CALL netcdf_create_att( id_set_xz(av), id_var_zs_xz(av), 'axis', & 3566 'Z', 000) 3497 3567 3498 3568 ENDIF … … 4299 4369 'x_yz', NF90_DOUBLE, id_var_x_yz(av), & 4300 4370 'meters', '', 185, 186, 000 ) 4371 CALL netcdf_create_att( id_set_yz(av), id_var_x_yz(av), 'axis', & 4372 'X', 000) 4301 4373 ! 4302 4374 !-- Define x axis (for u position) … … 4306 4378 'xu_yz', NF90_DOUBLE, id_var_xu_yz(av), & 4307 4379 'meters', '', 378, 379, 000 ) 4380 CALL netcdf_create_att( id_set_yz(av), id_var_xu_yz(av), 'axis', & 4381 'X', 000) 4308 4382 ! 4309 4383 !-- Define a variable to store the layer indices of the vertical cross … … 4320 4394 NF90_DOUBLE, id_var_y_yz(av), 'meters', '', & 4321 4395 190, 191, 000 ) 4396 CALL netcdf_create_att( id_set_yz(av), id_var_y_yz(av), 'axis', & 4397 'Y', 000) 4322 4398 ! 4323 4399 !-- Define y-axis (for v position) … … 4327 4403 NF90_DOUBLE, id_var_yv_yz(av), 'meters', '', & 4328 4404 381, 382, 000 ) 4405 CALL netcdf_create_att( id_set_yz(av), id_var_yv_yz(av), 'axis', & 4406 'Y', 000) 4329 4407 ! 4330 4408 !-- Define the two z-axes (zu and zw) … … 4334 4412 NF90_DOUBLE, id_var_zu_yz(av), 'meters', '', & 4335 4413 193, 194, 000 ) 4414 CALL netcdf_create_att( id_set_yz(av), id_var_zu_yz(av), 'axis', & 4415 'Z', 000) 4336 4416 4337 4417 CALL netcdf_create_dim( id_set_yz(av), 'zw', nz+2, id_dim_zw_yz(av), & … … 4340 4420 NF90_DOUBLE, id_var_zw_yz(av), 'meters', '', & 4341 4421 196, 197, 000 ) 4422 CALL netcdf_create_att( id_set_yz(av), id_var_zw_yz(av), 'axis', & 4423 'Z', 000) 4342 4424 ! 4343 4425 !-- Define UTM and geographic coordinates … … 4358 4440 'zs', NF90_DOUBLE, id_var_zs_yz(av), & 4359 4441 'meters', '', 546, 547, 000 ) 4442 CALL netcdf_create_att( id_set_yz(av), id_var_zs_yz(av), 'axis', & 4443 'Z', 000) 4360 4444 4361 4445 ENDIF … … 5282 5366 NF90_DOUBLE, id_var_z_pr(i,0), & 5283 5367 'meters', '', 224, 225, 000 ) 5368 CALL netcdf_create_att( id_set_pr, id_var_z_pr(i,0), 'axis', & 5369 'Z', 000) 5284 5370 ! 5285 5371 !-- Define the variable … … 5310 5396 id_var_z_pr(i,j), 'meters', '', & 5311 5397 230, 231, 000 ) 5398 CALL netcdf_create_att( id_set_pr, id_var_z_pr(i,j), 'axis',& 5399 'Z', 000) 5312 5400 ! 5313 5401 !-- Define the variable … … 5732 5820 NF90_DOUBLE, id_var_zu_sp, 'meters', '', & 5733 5821 274, 275, 000 ) 5822 CALL netcdf_create_att( id_set_sp, id_var_zu_sp, 'axis', 'Z', 000) 5734 5823 ! 5735 5824 !-- Define vertical coordinate grid (zw grid) … … 5738 5827 NF90_DOUBLE, id_var_zw_sp, 'meters', '', & 5739 5828 277, 278, 000 ) 5829 CALL netcdf_create_att( id_set_sp, id_var_zw_sp, 'axis', 'Z', 000) 5740 5830 ! 5741 5831 !-- Define x-axis … … 5744 5834 NF90_DOUBLE, id_var_x_sp, 'm-1', '', 280, & 5745 5835 281, 000 ) 5836 CALL netcdf_create_att( id_set_sp, id_var_x_sp, 'axis', 'X', 000) 5746 5837 ! 5747 5838 !-- Define y-axis … … 5750 5841 NF90_DOUBLE, id_var_y_sp, 'm-1', '', 283, & 5751 5842 284, 000 ) 5843 CALL netcdf_create_att( id_set_sp, id_var_y_sp, 'axis', 'Y', 000) 5752 5844 ! 5753 5845 !-- Define the variables
Note: See TracChangeset
for help on using the changeset viewer.