<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2900.3314" name=GENERATOR>
<STYLE>@font-face {
        font-family: 宋体;
}
@font-face {
        font-family: Verdana;
}
@font-face {
        font-family: @宋体;
}
@page Section1 {size: 595.3pt 841.9pt; margin: 72.0pt 90.0pt 72.0pt 90.0pt; layout-grid: 15.6pt; }
P.MsoNormal {
        TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify
}
LI.MsoNormal {
        TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify
}
DIV.MsoNormal {
        TEXT-JUSTIFY: inter-ideograph; FONT-SIZE: 10.5pt; MARGIN: 0cm 0cm 0pt; FONT-FAMILY: "Times New Roman"; TEXT-ALIGN: justify
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline
}
SPAN.EmailStyle17 {
        FONT-WEIGHT: normal; COLOR: windowtext; FONT-STYLE: normal; FONT-FAMILY: Verdana; TEXT-DECORATION: none; mso-style-type: personal-compose
}
DIV.Section1 {
        page: Section1
}
UNKNOWN {
        FONT-SIZE: 10pt
}
BLOCKQUOTE {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; MARGIN-LEFT: 2em
}
OL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
UL {
        MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px
}
</STYLE>
</HEAD>
<BODY style="FONT-SIZE: 10pt; MARGIN: 10px; FONT-FAMILY: verdana">
<DIV><FONT face=Verdana color=#003366 size=2>Hi, Arlindo</FONT></DIV>
<DIV><FONT color=#003366></FONT> </DIV>
<DIV><FONT color=#003366>Thanks for your explanation. </FONT></DIV>
<DIV><FONT color=#003366></FONT> </DIV>
<DIV><FONT color=#003366>I have carried out sending 1 x 1
lat-lon GrADS variable to Python by setting a dummy 2 x 2 lat-lon
dimensional environment and clipping in Python. Here is a my suggestion to
change the name of function "exp" to "g2p" and "imp" to "p2g". These two names
are maybe more easily to comprehend and memorize.</FONT></DIV>
<DIV><FONT color=#003366></FONT><FONT color=#003366></FONT> </DIV>
<DIV><FONT color=#003366>Though I use Python only a few days and have little
understanding about such object-oriented programming language, I am glad to
share my practical experience of PyGrADS with other PyGrADS users. Today, I have
introduced the PyGrADS to others in my group.</FONT></DIV>
<DIV><FONT color=#003366></FONT> </DIV>
<DIV><FONT face=Verdana color=#003366 size=2>What I am most interested in
the to-be function of PyGrADS are more plot functions like GaLab.contourf
and more statistical functions for analysis of climate variability like
GaNum.eof.</FONT></DIV>
<DIV><FONT color=#003366></FONT> </DIV>
<DIV><FONT color=#003366>Thanks for your excellent job.</FONT></DIV>
<DIV><FONT color=#003366></FONT> </DIV>
<DIV><FONT color=#003366>Peter</FONT></DIV>
<DIV><FONT color=#000080></FONT> </DIV>
<DIV><FONT face=Verdana color=#c0c0c0 size=2>2008-04-11 </FONT></DIV>
<HR color=#b5c4df SIZE=1>
<DIV><FONT face=Verdana size=2><STRONG>发件人:</STRONG> Arlindo da Silva
</FONT></DIV>
<DIV><FONT face=Verdana size=2><STRONG>发送时间:</STRONG> 2008-04-11 19:23:09
</FONT></DIV>
<DIV><FONT face=Verdana size=2><STRONG>收件人:</STRONG> GRADSUSR@LIST.CINECA.IT
</FONT></DIV>
<DIV><FONT face=Verdana size=2><STRONG>抄送:</STRONG> </FONT></DIV>
<DIV><FONT face=Verdana size=2><STRONG>主题:</STRONG> [?? Probable Spam] Re:
Problem on PyGrads: Exchange array data between Python and GrADS </FONT></DIV>
<DIV><FONT face=Verdana size=2></FONT> </DIV>
<DIV><FONT face=Verdana size=2>
<DIV class=gmail_quote>On Fri, Apr 11, 2008 at 7:05 AM, $B2+J? (B <<A
href="mailto:ph0007@ustc.edu">ph0007@ustc.edu</A>> wrote:<BR>
<BLOCKQUOTE class=gmail_quote
style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Hi,
Arlindo<BR><BR>Thanks for your work on PyGrads. It is very
useful.<BR></BLOCKQUOTE>
<DIV><BR></DIV>
<DIV>I am glad it can be of some use.</DIV>
<DIV> </DIV>
<BLOCKQUOTE class=gmail_quote
style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid"><BR>Yet,
I feel some restrictions on the exchanging array data between Python and
GrADS. The only array data with nlon > 1 and nlat > 1 can be exchanged.
Similarly, such data can be drawn via the GaLab. The slice data with nlon*nz,
nlat*nz, nz*nt,...,ets and time index data are not supported. If the original
data have more dimensions than nlon*nlat, this problem can be solved by
slicing in Python and drawing via pylab. Or else, the PyGrADS will lose its
unique role.</BLOCKQUOTE>
<DIV><BR></DIV>
<DIV>This particular restriction, that the x-y dimensions must be varying when
exchanging data with python, is a development shortcut. Because of the
particular way functions are executed in GrADS, exchanging x-z, y-z, x-t, y-t,
z-t slices would require special handling if one is to retain symmetry of the
import/export methods. (Exporting such slices from GrADS to Python would be much
easier than importing into GrADS from Python.) In prioritizing development I
decided to impose this restriction for now and concentrate on other aspects of
the development. An overhaul of the IPC layer that manages this data exchange is
in my TO DO list, but I was hoping to address it in the context of GrADS v2 when
the E-dimension comes into play. </DIV>
<DIV><BR></DIV>
<DIV>Of course there are workarounds. You can always exchange a 2x2 lat-lon box
with python, and then discard some of the points once the data has been
exchanged. As I said, removing this restriction from the exp() method is more
straightforward. We can always use a helping hand, if you or others with Python
experience would like to contribute time to this development, just drop us a
note at <SPAN class=Apple-style-span
style="BORDER-COLLAPSE: collapse; webkit-border-horizontal-spacing: 2px; webkit-border-vertical-spacing: 2px"><A
href="mailto:opengrads-devel@lists.sourceforge.net">opengrads-devel@lists.sourceforge.net</A>
. One way people can contribute is to help with Wiki documentation and
examples,</SPAN></DIV>
<DIV><BR></DIV>
<BLOCKQUOTE class=gmail_quote
style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid"><BR>Do
you have further plans for upgrading PyGrADS recently?<BR></BLOCKQUOTE>
<DIV><BR></DIV>
<DIV>My immediate plans is to concentrate on making satellite imagery really
easy to use, with transparent support for McIDAS AREA files and some basic kml
support, so that people can tap on all the imagery that is freely available with
minimum effort. Satellite imagery is a very powerful tool and something that can
complement nicely all the other GrADS capabilities. (Why not implement this as a
GrADS extension, you ask. Well, it is much easier to make quick progress in
Python than C.)</DIV>
<DIV><BR></DIV>
<DIV> Thank you for you interest in PyGrADS. By far, it is still a
work in progress. Jump in if you can and help us accelerate the progress.</DIV>
<DIV><BR></DIV>
<DIV> Arlindo</DIV>
<DIV> </DIV></DIV>-- <BR>Arlindo da Silva<BR><A
href="mailto:dasilva@alum.mit.edu">dasilva@alum.mit.edu</A>
</FONT></DIV></BODY></HTML>