__group__ ticket summary component version milestone type owner status created _changetime _description _reporter Active Tickets 63 Segmentation fault on zeus (CONGRID problem) component1 defect somebody new 2007-06-27T16:50:11+02:00 2007-06-27T16:50:11+02:00 "There is a current problem on some linux distribution including zeus.locean-ipsl.upmc.fr (first detected by Martin Vancoppenolle) : {{{ zeus$ idl IDL Version 6.2 (linux x86 m32). (c) 2005, Research Systems, Inc. Installation number: 500138. Licensed for use by: CNRS/ IPSL IDL> pltv, dist(20) % Compiled module: DIST. % Compiled module: PLTV. % Compiled module: DETERMINEMINMAX. % Compiled module: TESTVAR. % Compiled module: REINITPLT. % Compiled module: PLACEDESSIN. % Compiled module: CALIBRE. % Compiled module: GIVEWINDOWSIZE. % Compiled module: GET_SCREEN_SIZE. % Compiled module: CONGRID. Segmentation fault }}} This is not a SAXO problem. The solution is described on [http://www.ittvis.com/services/techtip.asp?ttid=4177] System team has been alerted on this issue. Working on ajax.locean-ipsl.jussieu.fr is ok. " pinsard Active Tickets 70 online_help with idl 7.0 component1 provide usefull and beautifull documentations defect somebody new 2008-04-09T15:50:06+02:00 2008-10-08T12:14:13+02:00 "SAXO online_help is not available with idl 7.0 (was ok with 6.2 and 6.4). It means when you type ""?"", you won't see anymore SAXO documentation. Please refer to http://forge.ipsl.jussieu.fr/saxo/download/idldoc_html_output/index.html It seems to be possible to see the SAXO assisant alone via {{{ IDL> ONLINE_HELP,book=""SAXO_DIR/SRC/Documentation/idldoc_assistant_output/idldoc-lib.adp"" }}} Path of adp file should be modified according the relative path of SAXO installation and the working directory. " pinsard Active Tickets 69 svn checkout failure component1 SAXO on trac defect somebody new 2008-03-05T17:37:39+01:00 2008-03-05T17:37:39+01:00 "A regular user didn't manage to checkout saxo with : {{{ $ svn checkout http://forge.ipsl.jussieu.fr/saxo/svn/trunk/ SAXO_DIR }}} Here is the error message : {{{ svn: PROPFIND request failed on '/saxo/svn/trunk' svn: PROPFIND of '/saxo/svn/trunk': could not connect to server (http://forge.ipsl.jussieu.fr) }}} The huggly but efficient solution was to suggest to use the tarfile. It would be useful to understand the problem and find a solution. " pinsard Active Tickets 29 check that U, V W points work correctly with partial steps component1 defect smasson new 2006-07-04T22:37:37+02:00 2006-07-04T22:37:37+02:00 "I have to check - if the depth of the points is correctly set when doing vertical section with U, V W points in partial steps - if the thickness of the levels is the good one for the U, V W points in partial steps " smasson@… Active Tickets 31 plot roms outputs with SAXO component1 defect smasson new 2006-07-04T22:46:25+02:00 2007-10-10T17:36:29+02:00 "Sorry in french... Hello Seb, une nouveau defi pour toi. Je suis entrain de me mettre a ROMS. C'est assez amusant. C'est surtout hyper simple de faire des config. Voila, j'ai fait une config Pacifique pour commencer. Roms cree une grille C de type OPA. Un exemple est dans /usr/temp/menkes/roms_grd.nc Ma question, simple, est: comment adapter tes outils pour lire ca plutot que le meshmask ? un des problemes c'est que u,t,v n'ont pas le meme nombre de points. Un deuxieme probleme que tu ne vois pas la, c'est que les coordonnees sont en sigma et donc s'ajustent a la bathymetry et donc il faut arriver a les retransformer en z. POur cela, lorsque le run calcule la surface libre, zeta (voir dans /usr/temp/menkes/roms_avg_seb.nc, on a une transformation analytique: etant donnes: {{{ % Number of vertical Levels % N = 30; % % Vertical grid parameters % theta_s = 6.; theta_b = 0.; hc = 5.; % }}} on a en matlab : {{{ function z = zlevs(h,zeta,theta_s,theta_b,hc,N,type); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % pierrick 2002 % % % % function z = zlevs(h,zeta,theta_s,theta_b,hc,N,type); % % % % this function compute the depth of rho or w points for ROMS % % % % On Input: % % % % type 'r': rho point 'w': w point % % % % On Output: % % Number of vertical Levels % N = 30; % % Vertical grid parameters % theta_s = 6.; theta_b = 0.; hc = 5.; % % % % z Depths (m) of RHO- or W-points (3D matrix). % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% [M,L]=size(h); % % Set S-Curves in domain [-1 < sc < 0] at vertical W- and RHO-points. % cff1=1./sinh(theta_s); cff2=0.5/tanh(0.5*theta_s); if type=='w' sc=((0:N)-N)/N; N=N+1; else sc=((1:N)-N-0.5)/N; end Cs=(1.-theta_b)*cff1*sinh(theta_s*sc)... +theta_b*(cff2*tanh(theta_s*(sc+0.5))-0.5); % % Create S-coordinate system: based on model topography h(i,j), % fast-time-averaged free-surface field and vertical coordinate % transformation metrics compute evolving depths of of the three- % dimensional model grid. % hinv=1./h; cff=hc*(sc-Cs); cff1=Cs; cff2=sc+1; z=zeros(N,M,L); for k=1:N z0=cff(k)+cff1(k)*h; z(k,:,:)=z0+zeta.*(1.+z0.*hinv); end %if type=='w' % hmin=min(min(h)); % hmax=max(max(h)); % for k=N:-1:1 % cff1=sc(k)*hc+(hmin-hc)*Cs(k); % cff2=sc(k)*hc+(0.5*(hmin+hmax)-hc)*Cs(k); % cff3=sc(k)*hc+(hmax-hc)*Cs(k); % disp([num2str(k,6),' | ',num2str(sc(k),6),' | ',num2str(Cs(k)),' | ',... % num2str(cff1),' | ',num2str(cff2),' | ',num2str(cff3)]) % end %end return }}} Je ne te demande pas de me faire les programmes, sauf si vraiment ca t'interesse.....mais par contre, je voudrais bien un conseil sur comment, a ton avis, proceder dans ta suite de programmes. En gros, on a ici des prorammes matlab mais je voudrais faire qcq chose de propre en IDL pour ROMS. Thanks. Bob $ " christophe.menkes@… Active Tickets 72 pb in daysinmonth component1 defect somebody new 2008-08-14T15:45:23+02:00 2008-08-14T18:50:10+02:00 "Can you please check for this problem (on zeus with ""official"" distribution for LOCEAN ) : {{{ IDL> ndays = daysinmonth(2, 2000) COMMON date, year, month, day, prefix ^ % YEAR is already defined with a conflicting definition. At: /usr/home/fplod/tmp/saxo_fplod.1218721204/oldcm_used.pro, Line 39 COMMON date, year, month, day, prefix ^ % MONTH is already defined with a conflicting definition. At: /usr/home/fplod/tmp/saxo_fplod.1218721204/oldcm_used.pro, Line 39 % Compiled module: DAYSINMONTH. % Attempt to call undefined procedure/function: 'DAYSINMONTH'. % Execution halted at: $MAIN$ }}} daysinmonth.pro version according to xhelp is 325 " pinsard Active Tickets 76 pb ncdf_quickwrite component1 defect somebody new 2011-08-19T09:47:37+02:00 2011-08-19T09:47:37+02:00 "Am I the only one to have problem with ncdf_quickwrite ? Here is the simpliest example I wrote : {{{ nlat=73 nlon=96 latitude=findgen(nlat) longitude=findgen(nlon) pressure2d=findgen(nlon,nlat) ncfile='my1.nc' ncfields='latitude[];longitude[];pressure2d[longitude,latitude]' @ncdf_quickwrite }}} Here is the output on loholt1.ipsl.polytechnique.fr (climserv) running IDL 8.0.1 {{{ Writing fields: latitude[];longitude[];pressure2d[longitude,latitude] % Loaded DLM: NCDF. % NCDF_DIMDEF: 0 is not a valid cdfid. % Stop encountered: $MAIN$ % Prematurely closing batch file: /home/pinsard/SAXO_DIR/SRC/ReadWrite/idl-NetC DF/ncdf_quickwrite/ncdf_quickwrite.pro. }}} my1.nc is created but : {{{ [pinsard@loholt1 ~]$ ncdump my1.nc ncdump: my1.nc: NetCDF: Unknown file format }}} No such trouble on the same plateform running IDL 6.4 No such trouble on cratos running IDL 7.0 Any idea of how to investigate this issue ... " pinsard Active Tickets 62 bad links in some directory-overview.html component1 provide usefull and beautifull documentations defect pinsard assigned 2007-06-26T12:48:10+02:00 2007-06-26T17:19:56+02:00 "In [https://forge.ipsl.jussieu.fr/cgi-bin/awstats.pl] we can see in § Required but not found URLs (HTTP code 404) that there are some bad links in [http://forge.ipsl.jussieu.fr/saxo/download/idldoc_html_output/Grid/directory-overview.html ] because of {{{/saxo/download/idldoc_html_output/Grid//domdef%3C/pro%3E)%20%20previously%20defined%20by%20%3Cpro%3Esaveboxparam.html 1}}}. This is due to a mistake in {{{pro2href.sh}}} which does not correctly handle multiple occurences of {{{ ...}}} on the same line. This problem was known and the temporary solution was to recommand to write only one {{{... }}} per line but I did not imagine that lines are restructrured in {{{directory-overview.html}}} files. Here is a way to test future improvements : {{{ $ cd /tmp/ $ mkdir pro2href_tp_in $ mkdir pro2href_tp_ $ cd pro2href_tp $ cat tp.html a1a a1b a2 $ cp tp.html pro2href_tp_in/ $ cd ../pro2href_tp_in $ touch a1a.html $ touch a1b.html $ touch a2.html $ ~/SAXO_DIR_ws/SRC/Documentation/xmldoc/pro2href.sh . $ more tp.html }}} If the result is not ok, improve {{{pro2href.sh}}}, copy {{{pro2href_tp/tp.html}}} in {{{pro2href_tp_in/}}} and try again ... " pinsard Active Tickets 38 wrong link in message associated to [changeset:114 changeset 114] component1 SAXO on trac defect somebody new 2006-07-21T16:47:52+02:00 2006-07-21T16:47:52+02:00 "The syntaxe of the commit command was --message ""add files for xxx documentation see ![source:trunk/SRC/Documentation/xmldoc/mini_notice.html?format=raw mini_notice.html]"" but link is broken Error No node at /trunk/SRC/Documentation/xmldoc/mini_notice.html?format=raw in revision 144 The path seems to be (ie https://forge.ipsl.jussieu.fr/saxo/browser/trunk/SRC/Documentation/xmldoc/mini_notice.html ) correct so may be there is a problem with ?format=raw. Anyway I don't know how can I modify this message. " pinsard Active Tickets 61 trouble with xxx component1 provide usefull and beautifull documentations enhancement somebody reopened 2006-11-22T15:18:53+01:00 2007-03-13T10:47:40+01:00 "I would like to plot data from a file condmag.nc with following netcdf attributes {{{ dimensions: la = 180 ; lo = 360 ; variables: double la(la) ; double lo(lo) ; double cond_sed(la, lo) ; cond_sed:units = ""siemens"" ; double cond_oc(la, lo) ; cond_oc:units = ""siemens"" ; double cond_tot(la, lo) ; cond_tot:units = ""siemens"" ; double Br(la, lo) ; Br:units = ""tesla"" ; // global attributes: :description = ""Conductance and magnetic field (from Rob)"" ; :author = ""Frederic Vivier"" ; :date = ""July 9, 2003"" ; }}} When I do {{{ IDL> xxx,'condmag.nc' }}} I have the following error message : {{{ the xaxis was not found, check the use of XAXISNAME keyword % Stop encountered: INITNCDF 131 /Users/fplod/SAXO_DIR_ws/SRC/ToBeReviewed/INIT/initncdf.pro }}} Can you give me some advice either on xxx usage or on changes that I can made in condmag.nc to make it plotable xxx ? " pinsard Active Tickets 15 plttg: generalised axis type in pltt (use for wavelet for example) component1 virtual machine enhancement somebody new 2006-06-13T14:57:12+02:00 2007-10-10T17:26:23+02:00 "{{{ ;------------------------------------------------------------ ;+ ; NAME: ; PLTTG ; ; PURPOSE: ; trace des graphes hovmoller avec axe generalise ; ; CATEGORY: ; Graphics, trace des graphes hovmoller: gt ; ; CALLING SEQUENCE: ; plttg, champ,gaxis [,min[, max[, datmin[, datmax]]]] ; ; INPUTS: ; champ: le champ dont on veut faire le hovmoller champ ; peut etre de 2 types: ; 1) un tableu qui peut etre: ; * 3d ou 4d: la derniere composante etant le temps. dans ce ; cas, le tableau va passer dans grossemoyenne pour etre ; moyennee suivant et devenir un tableau 2d ou 1d. ; * 2d: si tableau est deja 2d, il n''est pas modifie ; (attention les terres doivent etre masquees a la valeure ; valmask) et type doit qd meme etre specifie pour qu''on ; sache de quel trace il sagit. Pour avoir une legende ; correcte, respecifier la zone d''extraction via BOITE ; * 1d: uniquement pour les traces de type 't'. Type doit qd ; meme etre specifie pour qu''on sache de quel trace il ; sagit. Pour avoir une legende correcte, respecifier la zone ; d''extraction via BOITE ; 2) une structure repondant aux critaire specifies par ; litchamp.pro. cf. IDL> xhelp,'litchamp'. Le tableau contennu ds ; la structure repondant aux criteres du cas 1) cf. ci-dessus ; ; TYPE: type de hovmoller que l''on veut faire: ; 'yt' only ; ; ces arguments ne sont pas obligatoires: ; ; MAX: valeur maximum que l''on veut prendre en compte dans le trace ; des contours. Par defaut on prend le max de tableau (sur les pts mer) ; ; MIN: valeur minimum que l''on veut prendre en compte dans le trace ; des contours. Par defaut on prend le min de tableau (sur les pts ; mer) ; ; DATMIN: c''est la borne inf de l''axe temporel. c''est un ; longinteger de la forme yyyymmdd (ou bien yymmdd). ; ; DATMAX: c''est la borne max de l''axe temporel. c''est un ; longinteger de la forme yyyymmdd (ou bien yymmdd) ; ; KEYWORD PARAMETERS: ; ; BOITE:vecteur indiquant la zone geographique (3d) sur laquelle doit ; etre fait l''extraction du champ pour faire le hovmoeller. ; Si BOITE a : ; 1 element : l''extraction est faite sur [lon1, lon2, lat1, lat2, 0.,boite[0]] ; 2 elements: l''extraction est faite sur [lon1, lon2, lat1, lat2, boite[0],boite[1]] ; 4 elements: l''extraction est faite sur [Boite, prof1, prof2] ; 5 elements: l''extraction est faite sur [Boite[0:3], 0, Boite[4]] ; 6 elements: l''extraction est faite sur Boite ; ; Ou lon1, lon2,lat1,lat2,prof1,prof2 sont les variables globales ; definies lors du dernier domdef! ; ; CB_TITLE: le titre de la colorbar ; ; CB_SUBTITLE: le soustitre de la colorbar ; ; CB_CHARSIZE: The character size of the color bar annotations ; ; CONTINTERVALLE: lorsque CONTOUR est active, valeur d''un ; intervalle entre deux isolignes traces par un trait ds la couleur ; c_lab. Il peut ainsi etre different de celui specifie par INTERVALLE ; qui, cas ce cas, ne controle que les isolignes coloriees en ; couleurs. Si aucun min n''est specifie, on choisit un contour min qui va ; bien avec l''intervalle specifie!. Si ce mot cle n''est pas ; specifie, on trace 20 isolignes du min au max. ; ; CONTLABEL: un entier n. lorsque CONTOUR est active, si n ; different de 0, choisit le type de label correspondant aux cas n ; pour les isolignes tracees par un trait. Pour specifier le type de ; label du contour en couleur, utiliser LABEL ; ; CONTMAX: lorsque CONTOUR est active, valeur maximum que l''on ; veut prendre en compte dans le trace des isolignes traces par un ; trait de couleur c_lab. Par defaut on prend le max (sur les pts mer) ; du tableau passe ds le mot cle CONTOUR. ; ; CONTMIN: lorsque CONTOUR est active, valeur minimum que l''on ; veut prendre en compte dans le trace des isolignes traces par un ; trait de couleur c_lab. Par defaut on prend le max (sur les pts mer) ; du tableau passe ds le mot cle CONTOUR. ; ; CONTNLEVEL: lorsque CONTOUR est active, nombre de contours ; trace par un trait de couleur c_lab a dessiner (actif si ; CONTLABEL=0) par defaut =20. ; ; CONTOUR: si on veut tracer les contours d''un champ different que celui ; que l''on dessin en couleur (par ex E-P en couleur et QSR en ; contours). Doit etre un champ reponadnt aux meme caracteristiques ; que l''argument numero 1 de pltt ; ; ENDPOINTS: mot clef specifiant que l'on veut faire une coupe ; verticale en diagonale. les coordonnees des extremites de ; celle-ci sont alors definies les 4 elements du vecteur ; ENDPOINTS: [x1,y1,x2,y2] qui sont les coordonnees ; ; /EXCHANGE_XY: permet d''intervertir les axes. ; ; FILTER: applique une moyenne glissante de largeur FILTER ; ; INTERVALLE: valeur d''un intervalle entre deux isolignes. Si ; aucun min n''est specifie, on choisit un contour min qui va bien ; avec l''intervalle specifie!. Si ce mot cle n''est pas specifie, on ; trace 20 isolignes du min au max. Rq: Qd CONTOUR est active ; INTERVALLE ne specifie que intervalle entre 2 isolignes coloriees en ; couleur. Pour specifier l''intervalle entre 2 isolignes traces par un trait ; de couleur c_lab utiliser CONTINTERVALLE. ; ; /INV: inverse le vecteur couleur utilise pour colorier le graphe ; (sans toucher au noir, au blanc et a la palette utilisee) ; ; LABEL: un entier n. si n different de 0, choisit le type de ; label correspondant aux cas n. cf label.pro ; Rq: Qd CONTOUR est active, ne specifie le type de label que pour les ; isolignes coloriees en couleur. Pour celles tracees par un trait de ; couleur c_lab utiliser CONTLABEL. ; ; /LANDSCAPE: oblige la feuille ou le fenetre a l''ecran a etre ; en position ""allongee"". ; ; LCT: entier designant le numero de la palette de couleur que ; l''on veut utiliser pour le plot. ; ; COL1d: --OBSOLETE--numero de la couleur qd on fait un trace 1d ; par defaut, 0. il faut mieux utiliser le mot cle COLOR utilise ; par plot ; ; MAXIN: permet de specifier la valeur maximum que l''on veut ; prendre en compte dans le trace des contours a l''aide d''un ; mot cle plutot que par l''argument max. Si l''argument et le ; mot cle sont specifies en meme temps, c''est la valeur ; specifiee par le mot cle qui est retenue. ; ; MININ: permet de specifier la valeur minimum que l''on veut ; prendre en compte dans le trace des contours a l''aide d''un ; mot cle plutot que par l''argument min. Si l''argument et le ; mot cle sont specifies en meme temps, c''est la valeur ; specifiee par le mot cle qui est retenue. ; ; NLEVEL: nombre de contours a dessiner. par defaut =20. actif si ; LABEL=0 ou n''est pas specifie. ; ; CONTNLEVEL: nombre de contours a dessiner qd on utilise ajoutcontour ; active par le mot cle CONTOUR.(actif si CONTLABEL=0) par defaut =20. ; ; /NOCOLORBAR: activer si on ne veut pas de colorbar ; ; /NOCONTOUR: activer si on ne veut pas de contour mais juste ; les couleurs ; ; /NOCOULEUR: activer si on veut juste les contours en noir et ; blanc sur fond blanc ; ; /NOERASE: activer pour faire un dessin a l''ecran sans creer ; une nouvelle fenetre. Rq: activer ds le cas d''un Postscript de ; plusieurs traces de type 't' pour ne pas faire un Postscript de ; plusieurs pages ; ; /OV1D:permet de surimprimer un courbe 1d a un precedent trace 1d. ; ; OVERPLOT: pour faire un pltt par dessus un autre. Rq: ; contrairemnet a l''utilisation de CONTOUR, ; l''utilisation de ce mot clef ne modifie pas la legende ou/et ; la barre de couleur. dans le cas d''un plot 1d, contrairement ; a ov1d, on peut changer les axes et les ranges. ; ; PETITDESSIN: vecteur de 3 ou 4 elements, applique pour faire un ; dessin sur une petite portion de feuille ou d''ecran. il delimite ; la zone ds laquelle va etre fait le dessin ; si il a 4 elements: ; il est alors constitute des coordonnees -exprime en cm reperes par ; rapport au coin en bas a gauche de la feuille ou de la fenetre ; (en portrait comme en landscape)- du coin en bas a ; gauche et du coin en haut a droite de la zone de dessin. ; si il a 3 elements: ; Ds ce cas, on divise la fenetre ou l''ecran en PETITDESSIN[0] ; colonnes, en PETITDESSIN[1] lignes le dessin se faisant ds la ; case numero PETITDESSIN[2].La numerotation commencant en haut ; a gauche par le numero 1 et suivant apres dans le sens de ; l''ecriture. ; Par defaut on fait un dessin occupant la plus grande place possible ; tout en concervant le rapport d''aspect (sauf qd REMPLI est active) ; ; /PORTRAIT: oblige la feuille ou la fenetre a etre en position ""debout"". ; ; /POST: faire une sortie postscript. Ne marche que si on fait ; un seul dessin sur la feuille. Si on fait plusieurs dessins, ; utiliser @ps ou plein2dessins ; ; REPEAT_C=n pour repeter une serie temporelle n fois ; ; /REMPLI:oblige le dessin a occuper l''espace maximum definit ; par petitdessin ; ; /REVERSE_X: pour inverser l''axe des x (et aussi le dessin) ; ; /REVERSE_Y: pour inverser l''axe des y (et aussi le dessin) ; ; /STRICTFILL: activer ce mot clef pour que le remplissage des ; contours ce fasse precisement entre le min et le max specifie ; en laissant en banc les valeurs inferieurs au min specifie et ; superieurs au max specifie. ; ; STYLE: style de tracer a adopter pour dessiner les isolignes par ; defaut style=0. cf style.pro ; ; STY1D: --OBSOLETE--numero du style utilise lors d''un trace ; 1d. Il faut mieux utiliser le mot cle LINESTYLE qui est celui ; de plot. Attention ce mot cle est encore utile si on veut ; faire des barres plutot qu''une courbe, mettre sty1d='bar' ; ; /TRANS: fait un postscript (active /post automatiquement) et l''imprime ; -si on le desire- sur un transparant ; ; TREND_TYPE: modify data by calling trends.pro ; ; TYPEIN: permet de specifier la valeur type de hovmoller que ; l''on veut faire: ; 'xt','yt','zt','t' ; a l''aide d''un mot cle plutot que par l''argument type Si ; l''argument et le mot cle sont specifies en meme temps, c''est ; la valeur specifiee par le mot cle qui est retenue. ; ; /USETRI: pour forcer a utiliser de triangulation. ; ; UNLABSUR: entier n. specifant qu''on ne labelle qu''un ; contour sur n. Par defaut unlabsur=2 ; ; /UNSUR2: si on veut tracer un countour sur deux. par defaut trace ; tous les contours ; ; WINDOW: nimero de la fenetre ou l''on veut faire le graphe (permet ; d'ouvrir plusieurs fenetres). par defaut on ouvre 'IDL0' ; ; YSURX: rapport d'echelle entre y et x. Par defaut=1 ; Par defaut on adapte pour occupe une grande partie de la feuille en sortie ; postScript ou pour cree une fenetre pas trop etiree ; ; COMMON BLOCKS: ; common.pro ; ; SIDE EFFECTS: ; ; RESTRICTIONS: ; ; EXAMPLE: ; ; MODIFICATION HISTORY: Sebastien Masson (smasson@lodyc.jussieu.fr) ; 27/5/98 ; Jerome Vialard (adapting plt to hovmoller drawing) ; 2/7/98 ; Sebastien Masson 14/8/98 (continents,barres) ; 15/1/98 ; adaptation pour les tableaux 3 et 4d pour que la moyenne soit faite ; dans pltt plutot que lors de la lecture. ; Sebastien Masson 14/8/98 ; 7/1999 ; Eric Guilyardi 29/7/99 FILTER, TREND_TYPE, ; REPEAT_C ; Sebastien Masson 08/02/2000 checkfield and ; usetri keyword. ;- ;------------------------------------------------------------ ;------------------------------------------------------------ ;------------------------------------------------------------ pro plttg,tab,gaxis,givenmin,givenmax,datmin,datmax,BOITE = boite, CONTOUR=contour $ ,ENDPOINTS=endpoints,INTERVALLE=intervalle,INV=inv $ ,CONTINTERVALLE=contintervalle,LABEL=label,CONTLABEL=contlabel $ ,STYLE=style, CONTMAX=contmax $ ,CONTMIN=contmin,NLEVEL=nlevel,CONTNLEVEL=contnlevel $ ,COL1D=col1d,STY1D=sty1d, MININ = minin, MAXIN = maxin $ ,OV1D=ov1d, FILTER = filter, TREND_TYPE = trend_type $ ,REPEAT_C = repeat_c, TYPEIN = typein, XT = XT, YT = YT, ZT = zt $ , TT = tt, STRICTFILL = strictfill, OVERPLOT = overplot $ , EXCHANGE_XY = exchange_xy $ , _extra = ex @common giventype = 'yt' ;------------------------------------------------------------ tempsun = systime(1) ; pour key_performance ;-------------------------------------------------------------- ; I2) reinitialisation. !p.,!x.,!y. ; Rq: on ne reinitialise pas qd on rapelle plt en boucle pour utiliser contour ;-------------------------------------------------------------- if n_elements(contour) ne 4 AND NOT keyword_set(overplot) $ AND NOT keyword_set(ov1d) then reinitplt ;-------------------------------------------------------------- ; I1) lecture du champ ;-------------------------------------------------------------- if keyword_set(boite) then oldboite = [lon1, lon2, lat1, lat2, prof1, prof2] if n_elements(giventype) NE 0 then type = giventype if n_elements(givenmin) NE 0 then min = givenmin if n_elements(givenmax) NE 0 then max = givenmax if n_elements(minin) NE 0 then min = minin if n_elements(maxin) NE 0 then max = maxin if keyword_set(typein) then BEGIN if size(type, /type) NE 7 AND size(type, /type) NE 0 then begin if n_elements(min) NE 0 then max = min min = type endif type = typein ENDIF z2d = tab mask = 1 ;--------------------------------------------------------------- ; selection du type de graphique. ;--------------------------------------------------------------- ;--------------------------------------------------------------- ; repetition de la serie temporelle ;--------------------------------------------------------------- IF NOT keyword_set(repeat_c) THEN repeat_c = 1 temps = time[0:jpt-1] IF repeat_c GT 1 THEN BEGIN taille=size(z2d) CASE taille[0] OF 1: z2d = reform(z2d#replicate(1, repeat_c), taille[1]*repeat_c) 2: BEGIN z2d = z2d[*]#replicate(1, repeat_c) z2d = reform(z2d, taille[1], taille[2]*repeat_c, /over) END ELSE: ENDCASE temps = [temps, (lindgen(jpt*(REPEAT_c-1))+1)*(temps[1]-temps[0])+temps[jpt-1]] ENDIF ;---------------------------------------------------------------------------- ; determination du mi:min et du ma:max de z2d ainsi que de max: max et ; min: min pour le dessin. ;----------------------------------------------------------------------------- ; faudra-t-il faire un autoscale ??? autoscale = testvar(var = min) EQ testvar(var = max) AND NOT keyword_set(intervalle) determineminmax, z2d, mask, mi, ma, MININ = min, MAXIN = max, nan = nan, INTERVALLE = intervalle if z2d[0] EQ -1 THEN return ; on fait un autoscale si besoin if autoscale then autoscale, min, max, intervalle ;----------------------------------------------------------------------------- ;----------------------------------------------------------------------------- if n_elements(contour) ne 4 AND NOT keyword_set(overplot) THEN $ placedessin, 'pltt',posfenetre, posbar, contour = contour, direc = direc, type = type, endpoints = endpoints, _extra = ex ;-------------------------------------------------------------- ;-------------------------------------------------------------- ; 2eme partie: dessin ;-------------------------------------------------------------- ;----------------------------------------------------------- ; definition des axes ;---------------------------------------------------------- ;----------------------------------------------------------------------------- ; definition des vecteurs abscisse et ordonee ; la triangulation est definie pour que le trace soit effectue du bas ; a gauche vers le haut a droite. il faut donc la matrice e contourer ; se presente de cette maniere, d''ou certains transpose et reverse ;----------------------------------------------------------------------------- ;----------------------------------------------------------------------------- ; definition des bornes de l''axe temporel ;----------------------------------------------------------------------------- case N_PARAMS() OF 5 : begin tempsmin = juldate(datmin, _extra = ex) tempsmax = temps[(jpt*repeat_c)-1] end 6 : begin tempsmin = juldate(datmin, _extra = ex) tempsmax = juldate(datmax, _extra = ex) end else : begin tempsmin = temps[0] tempsmax = temps[(jpt*repeat_c)-1] end endcase ;----------------------------------------------------------------------------- ; on shift l''axe du temps pour des questions de precision sur les ; dates du calendier julien en long qui sont passes en float ds les axes yy = gaxis xx = temps-tempsmin ;-------------------------------------------------------------- if NOT keyword_set(overplot) THEN axe, type, tempsmin, tempsmax, plttg = 1, _EXTRA = ex ELSE BEGIN !x.range=!x.range-tempsmin !x.tickv=!x.tickv-tempsmin ENDELSE ;------------------------------------------------------------ ;------------------------------------------------------------ ; dessin ;------------------------------------------------------------ ; 2d ;------------------------------------------------------------ ;-------------------------------------------------------------- ; choix des labels ;----------------------------------------------------------- if keyword_set(intervalle) AND NOT keyword_set(label) then label=1 if keyword_set(label) eq 0 then cas=0 else cas=label label,cas,min,max,ncontour,level_z2d,NLEVEL=nlevel,INTERVALLE=intervalle, strictfill = strictfill ;-------------------------------------------------------------- ; choix de style ;----------------------------------------------------------- if not keyword_set(style) then style=0 style,style,level_z2d,linestyle,thick if keyword_set(inv) then couleur=reverse(couleur) ;---------------------------------------------------------------------- nby = n_elements(yy) nbx = n_elements(xx) xx = xx#replicate(1, nby) ; on passe les axes en tableaux 2d yy = replicate(1, nbx)#yy triangulation = -1 ;---------------------------------------------------------------------- pltbase,z2d, xx, yy, mask,xx, yy, level_z2d, couleur, contour = contour,/noerase $ , c_linestyle=linestyle,c_labels=1-(indgen(n_elements(level_z2d)) MOD 2) $ , trichamp = triangulation, trimsk = triangulation, overplot = overplot $ , c_thick=thick, performance = key_performance, usetri = keyword_set(nan) $ , coinmontemask=coinmontemask, coindescendmask=coindescendmask, _extra = ex ;------------------------------------------------------------ if n_elements(contour) eq 4 then BEGIN ; c''est la 2eme fois que je passe ds pltt contour = {mietma:[mi, ma], unit:varunit, inter:intervalle} ; je renvoie le min, le max et l''unite return endif ;------------------------------------------------------------ if keyword_set(contour) then BEGIN pourlegende = [1, 1, 1, 1] oldattributs = saveatt() oldcouleur = couleur plttg,contour,gaxis, contmin,contmax,CONTOUR=pourlegende, /noerase, USETRI = usetri $ ,INTERVALLE=contintervalle,LABEL=contlabel,STYLE=style, ENDPOINTS = endpoints $ ,NLEVEL=contnlevel,YSURX=ysurx, BOITE = boite, STRICTFILL = strictfill, _extra = ex couleur = oldcouleur restoreatt, oldattributs endif ;---------------------------------------------------------------------- ;---------------------------------------------------------------------- if keyword_set(overplot) then GOTO, fini ;------------------------------------------------------------ ; legendes + affichage de celles-ci ;------------------------------------------------------------ legende,mi,ma,type, CONTOUR = pourlegende, DIREC = direc, INTERVALLE = intervalle $ , plttg = 1, _extra = ex plot,[0],[0],/noerase,/nodata,color=c_cote, xstyle = 1, ystyle = 1 ;------------------------------------------------------------ ; barre de couleur ;------------------------------------------------------------ couleur = couleur[0:ncontour-1-keyword_set(strictfill)] barrecouleur, position=posbar,divisions=(ncontour-keyword_set(strictfill))/2,min=min $ , max=max,discret=couleur,_extra = ex ;------------------------------------------------------------ fini: ;------------------------------------------------------------ ; on remet l''axe du temps en jours julien IDL et non pas en jours ; juliens comptes a partir tempsmin ;------------------------------------------------------------ !x.range=!x.range+tempsmin !x.tickv=!x.tickv+tempsmin ; on fait un faut plot pour que ces valeurs soient prises en ; consideration plot,[0], [0], /noerase,xstyle=5, ystyle = 5, title = '', subtitle = '', ytitle = '', xtitle = '' ;------------------------------------------------------------ ;------------------------------------------------------------ terminedessin, _extra = ex if keyword_set(oldboite) then domdef, oldboite,GRILLE=[vargrid, 'T'] ;------------------------------------------------------------ if n_elements(key_performance) NE 0 then $ IF key_performance EQ 1 THEN print, 'temps pltt', systime(1)-tempsun ;------------------------------------------------------------ ;------------------------------------------------------------ ;------------------------------------------------------------ return end }}}" ericg@… Active Tickets 73 more helpfull make_selection output component1 enhancement somebody new 2008-08-14T15:56:04+02:00 2008-08-14T15:56:04+02:00 " To make correction easier for end user of make_seection I suggest to show all the ""not found"" items. Here is an example from source : {{{ IDL> vals = indgen(20) IDL> index = MAKE_SELECTION(vals,[-1,-5,8,7,7,8,9],/REQUIRED) % MAKE_SELECTION: Selected name not found in names array (-1)! }}} Only ""-1"" is point out, -5 should also be seen. And with an additional keyword CHOICES for examples, it will be great to see quickly all the possibilities like {{{ IDL> vals = indgen(5) IDL> index = MAKE_SELECTION(vals,[-1,-5,8,7,7,8,9],/REQUIRED,/CHOICES) % MAKE_SELECTION: Selected name not found in names array (-1)! % MAKE_SELECTION: Selected name not found in names array (-5)! % MAKE_SELECTION: 0, 1, 2, 3 or 4 }}} here is a IDL source I wrote to do this : {{{ line="""" last=n_elements(names)-1 IF (n_elements(names) EQ 1) THEN BEGIN line = strtrim(names[0],2) ENDIF ELSE BEGIN FOR i=0,n_elements(names)-1 DO BEGIN IF ((i EQ 0) AND (i NE last)) THEN BEGIN line=strtrim(names[i],2) ENDIF IF ((i GE 1) AND (i NE last)) THEN BEGIN line=line + ', ' + strtrim(names[i],2) ENDIF IF (i EQ last) THEN BEGIN line=line + ' or ' + strtrim(names[i],2) ENDIF ENDFOR ENDELSE message,line,/CONT,NOPRINT=quiet }}} Of course line may be long ... very long so this is not the best way ... just an idea . " pinsard Active Tickets 74 about SMALL component1 enhancement somebody new 2008-08-14T17:20:12+02:00 2008-08-14T17:20:12+02:00 "keyword SMALL is very handy so I ask for more ... I can easily produce a 4 plots figure with small[2,2,*]. In the caption of the figure, I address each of these plots with a), b), c) d). Can you modify something somewhere to add a text like ""a)"" at the left bottom corner of each plot ? " pinsard Active Tickets 77 new release and repository of idldoc component1 enhancement somebody new 2013-06-10T10:05:04+02:00 2013-06-10T10:05:04+02:00 "Known home page of idldoc was http://idldoc.idldev.com/ with downloads page http://idldoc.idldev.com/wiki/Downloads A new one is on github : https://github.com/mgalloy/idldoc with IDLdoc 3.6.0 (without idldoc.sav). it has been announced in http://michaelgalloy.com/2012/12/27/github-migration.html. It might be usefull to test this new version to test the functionnality ""Added Exelis VIS Doc Center output."" because since IDL version > 6.4 we can not provide SAXO documentation included IDL documentation. " pinsard Active Tickets 78 upgrade to trac 1.0.1 component1 enhancement somebody new 2014-01-08T12:02:31+01:00 2014-01-08T14:39:48+01:00 "Done just before Christmas 2013 due to compromission of the forge IPSL plateform Side effect of security enhancements : no more access (error 405) to HTML pages under http://forge.ipsl.jussieu.fr/saxo/download/. Plateform administrator have been warn of this issue today. Need to check what have to be done about : - saxoticket (wiki account to post tickets) - changing passwrd, warn registred saxo users, etc. - svn checkout for regular users " pinsard Active Tickets 18 add debug_w switch in common.pro + init.pro for print in debug mode component1 enhancement somebody new 2006-06-14T14:49:21+02:00 2006-06-14T14:49:21+02:00 "Instead of commenting/deleting print statements during/after debug, adding a switch to do this would help. Suggestion: debug_w if debug_w then print, var Can also be used to have several levels of debug printing: if debug_w ge 2 then print, var2" ericg@… Active Tickets 28 create pltc: display the cells of the grid with colors (instead of using contour as in plt). component1 enhancement somebody new 2006-07-04T22:31:05+02:00 2006-07-04T22:31:05+02:00 "this is similar to pltv, except that pltv is plotting the data in the ""array space"" (with the arry indices) whereas pltc will draw the cells of the grid in the geographical coordinates. In a technical point of view, pltv will use tv whereas pltc will use polyfill. We have to find an efficient logarithm to avoid to draw the cell one by one (at least for the regular grids)." smasson@… Active Tickets 30 sigma coordinates etc... component1 enhancement smasson new 2006-07-04T22:42:04+02:00 2006-07-04T22:42:04+02:00 How do we treat the sigma and other vertical generamized coordinates??? smasson@… Active Tickets 75 common initialization ? component1 enhancement somebody new 2008-12-23T15:13:47+01:00 2008-12-23T15:14:21+01:00 "how common variables are initialized ? Just after my init, I notice the following values of commons defined in cm_4mesh.pro {{{ IDL> help,lat1 LAT1 (ZOOM_BOUNDARIES) FLOAT = 1.00000 IDL> help,lat2 LAT2 (ZOOM_BOUNDARIES) FLOAT = 1.50000 IDL> help,lon1 LON1 (ZOOM_BOUNDARIES) FLOAT = 1.00000 IDL> help,lon2 LON2 (ZOOM_BOUNDARIES) FLOAT = 1.50000 }}} Won't it be more explicit to initialize them to NaN ? " pinsard Active Tickets 64 In DocBook V5.0, ImageObjectCO will be discarded. In its place, use MediaObjectCO. component1 provide usefull and beautifull documentations enhancement somebody new 2007-07-09T17:08:49+02:00 2007-07-09T17:08:49+02:00 """ImageObjectCO will be discarded. In its place, use MediaObjectCO."" no emergency but might be usefull to know when modifying mini_notice.xml which is now in !DocBook 4.2. We already had pointed out that {{{xsltproc}}} and {{{saxon}}} did not handle callout correctly. {{{xalan}}} seems to be a good solution. see [http://lists.oasis-open.org/archives/docbook-apps/200707/msg00054.html] and the message of N. Walsh " pinsard Active Tickets 71 add Michel Kolasinski to developper's group component1 SAXO on trac task pinsard assigned 2008-04-15T15:33:55+02:00 2008-04-15T15:34:32+02:00 "add Michel Kolasinski to developper's group on trac side (forge web admin page + trac-admin instruction) and on saxo-dev mailing list" pinsard Active Tickets 17 bad look of idldoc html output on trac component1 1.0 SAXO on trac task pinsard new 2006-06-14T14:41:01+02:00 2006-09-20T17:11:43+02:00 "When URL is http://forge.ipsl.jussieu.fr/saxo/browser/trunk/SRC/Documentation/idldoc_html_output/index.html?format=raw we can't see the beautiful look of file:///private/var/automount/usr/home/smasson/SAXO_DIR/SRC/Documentation/idldoc_html_output/index.html for example. This problem may be due to a specific trac mechanism disturbing the access to CSS files " pinsard