2013-04-23 12 views
1

3D 및 4D 격자를 집계하는 데 NcML을 사용할 수 있습니까? 그들은 차원의 수가 다르므로 확실하지 않았습니다. 예 : ssh는 3 차원 [시간, 위도, 경도]을 가지며 temp는 4 차원 (시간, 깊이, 위도, 경도)을 갖습니다. 내 테스트는 성공하지 못 했으므로 3D 및 4D 변수를 별도의 카탈로그로 분해해야한다는 점이 중요합니다. 하지만 다른 사람들이 대안을 제시하기를 희망하고 있습니까? 나는 아래의 코드 조각과 함께 "노동 조합"집계를 사용하여 시도하는 동안 3D 변수 2008년 12월 28일을 시작하기 때문에원격 3D 및 4D 변수의 NcML 집합?

, 시간 차원이 적절하게 매핑되지 않았고 4D 변수는 2008-05-08을 시작 :

<?xml version="1.0" encoding="UTF-8"?> 
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2"> 
    <attribute name="title" value="HYCOM test aggregation #1"/> 
    <aggregation type="union"> 
    <!-- These are the 3D variables: --> 
    <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycom2d"/> 
    <!-- These are the 4D variables: --> 
    <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomT"/> 
    <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomS"/> 
    <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomU"/> 
    <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomV"/> 
    </aggregation> 
</netcdf> 

"time"차원에서 "joinExisting"집계를 시도했지만 데이터 집합에 각각 동일한 변수가 포함되어있는 경우에만 작동합니다. 하나는 3D 또는 4D 변수는 다음 예에서 제외 얻을, 내 집계에서 처음으로 나열하는 데이터 세트에 따라 :

<?xml version="1.0" encoding="UTF-8"?> 
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2"> 
    <attribute name="title" value="HYCOM test aggregation #2"/> 
    <aggregation dimName="time" type="joinExisting"> 
    <!-- These are the 3D variables: --> 
    <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycom2d"/> 
    <!-- These are the 4D variables: --> 
    <aggregation type="union"> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomT"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomS"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomU"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomV"/> 
    </aggregation> 
    </aggregation> 
</netcdf> 

을 따라서, 이러한 데이터 세트를 집계 할 수있는 방법은 없습니다? 3D 및 4D 변수를 별도로 유지해야합니까?

감사합니다! 존 마우어 태평양 제도 해양 관측 시스템 마노아 하와이 (PacIOOS) 대학

답변

1

존, 당신이 가입하고자하는 파일이 있지만 같은이 좌표 서로 다른 시간을 가지고 있기 때문에

이름 중 하나의 이름을 바꿔야합니다. 나는이 간단한 NcML 단순히 3D 데이터

<?xml version="1.0" encoding="UTF-8"?> 
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2"> 
    <attribute name="title" value="HYCOM test aggregation #1"/> 
    <aggregation type="union"> 
     <!-- These are the 3D variables: --> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycom2d"> 
      <dimension name="time2d" orgName="time"/> 
      <variable name="time2d" orgName="time"/> 
     </netcdf> 
     <!-- These are the 4D variables: --> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomT"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomS"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomU"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomV"/> 
    </aggregation> 
</netcdf> 

에서 시간 차원과 시간 변수의 차원과 이름을 이름을 변경, 일한 것이라고 생각하지만, 어떻게 든 netCDF의 자바가 추가 될 것으로 보인다 있기 때문에,하지 않는 것 변수 및 차원 이름을 변경하기 전에 "time lon lat"값이있는 _CoordinateAxes 속성 우리는 3D 데이터에서 해당 속성을 제거한다면, 그것은 작동 : 여기
<?xml version="1.0" encoding="UTF-8"?> 
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2"> 
    <attribute name="title" value="HYCOM test aggregation #1"/> 
    <aggregation type="union"> 
     <!-- These are the 3D variables: --> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycom2d"> 
      <dimension name="time2d" orgName="time"/> 
      <variable name="time2d" orgName="time"/> 
      <variable name="qtot"> 
       <remove type="attribute" name="_CoordinateAxes"/> 
      </variable> 
      <variable name="emp"> 
       <remove type="attribute" name="_CoordinateAxes"/> 
      </variable> 
      <variable name="t_trend"> 
       <remove type="attribute" name="_CoordinateAxes"/> 
      </variable> 
      <variable name="s_trend"> 
       <remove type="attribute" name="_CoordinateAxes"/> 
      </variable> 
      <variable name="ssh"> 
       <remove type="attribute" name="_CoordinateAxes"/> 
      </variable> 
      <variable name="mld"> 
       <remove type="attribute" name="_CoordinateAxes"/> 
      </variable> 
      <variable name="mlp"> 
       <remove type="attribute" name="_CoordinateAxes"/> 
      </variable> 
     </netcdf> 
     <!-- These are the 4D variables: --> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomT"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomS"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomU"/> 
     <netcdf location="dods://apdrc.soest.hawaii.edu:80/dods/public_data/Model_output/HYCOM/global/hycomV"/> 
    </aggregation> 
</netcdf> 

이 ToolsUI에서 당신은 3D 및 4D 변수를 볼 수있는 결과 데이터 세트의 AA 스크린 샷입니다 :

+0

우 후! 그게 효과가있어! 좋은 생각이야, 리치. 감사합니다. –