source: ether_megapoli/trunk/service/implementation/com/ether/BouchonHelper.java @ 186

Last change on this file since 186 was 186, checked in by vmipsl, 13 years ago

Servlet _ TimeSerie? :

  • 1 paramètre ok
  • même paramètre sur différentes plateformes ok
File size: 9.8 KB
Line 
1package com.ether;
2
3import com.medias.database.objects.Parametre;
4import com.medias.database.objects.Plateforme;
5import com.medias.database.objects.TypePlateforme;
6import com.medias.database.objects.Unite;
7import org.jetbrains.annotations.NotNull;
8import org.jetbrains.annotations.Nullable;
9
10import java.util.ArrayList;
11import java.util.Calendar;
12import java.util.Date;
13import java.util.List;
14
15public class BouchonHelper
16{
17    public static Plateforme createPlateform()
18    {
19        final Plateforme plateform = new Plateforme();
20        plateform.setPlateformeId( 3 );
21        plateform.setPlateformeNom( "LHVP" );
22        plateform.setTypePlateforme( new TypePlateforme( 1, "FIXE" ) );
23        return plateform;
24    }
25
26    public static List<Plateforme> createPlateforms()
27    {
28        final List<Plateforme> plateforms = new ArrayList<Plateforme>();
29        final Plateforme pf = createPlateform();
30        plateforms.add( pf );
31
32        final Plateforme pf2 = new Plateforme();
33        pf2.setPlateformeId( 1 );
34        pf2.setPlateformeNom( "SIRTA" );
35        pf2.setTypePlateforme( new TypePlateforme( 1, "FIXE" ) );
36        plateforms.add( pf2 );
37
38        final Plateforme pf3 = new Plateforme();
39        pf3.setPlateformeId( 4 );
40        pf3.setPlateformeNom( "ATR-42" );
41        pf3.setTypePlateforme( new TypePlateforme( 1, "MOBILE" ) );
42        plateforms.add( pf3 );
43
44        final Plateforme pf4 = new Plateforme();
45        pf4.setPlateformeId( 6 );
46        pf4.setPlateformeNom( "Piper-Aztec" );
47        pf4.setTypePlateforme( new TypePlateforme( 1, "MOBILE" ) );
48        plateforms.add( pf4 );
49
50        return plateforms;
51    }
52
53    public static Plateforme getPlateformById( @NotNull final Integer plateformId )
54    {
55        if( null != plateformId && plateformId == 1 )
56        {
57            final Plateforme pf2 = new Plateforme();
58            pf2.setPlateformeId( 1 );
59            pf2.setPlateformeNom( "SIRTA" );
60            pf2.setTypePlateforme( new TypePlateforme( 1, "FIXE" ) );
61            return pf2;
62        }
63        else if( null != plateformId && plateformId == 3 )
64        {
65            return createPlateform();
66        }
67        else if( null != plateformId && plateformId == 4 )
68        {
69            final Plateforme pf3 = new Plateforme();
70            pf3.setPlateformeId( 4 );
71            pf3.setPlateformeNom( "ATR-42" );
72            pf3.setTypePlateforme( new TypePlateforme( 1, "MOBILE" ) );
73            return pf3;
74        }
75        else if( null != plateformId && plateformId == 6 )
76        {
77            final Plateforme pf4 = new Plateforme();
78            pf4.setPlateformeId( 6 );
79            pf4.setPlateformeNom( "Piper-Aztec" );
80            pf4.setTypePlateforme( new TypePlateforme( 1, "MOBILE" ) );
81            return pf4;
82        }
83        else return null;
84    }
85
86    public static Parametre createParameter()
87    {
88        final Parametre parametre = new Parametre();
89        parametre.setParametreId( 3 );
90        parametre.setParametreNom( "Ozone" );
91        parametre.setParametreCode( "O3" );
92
93        final Unite unit = new Unite();
94        unit.setUniteCode( "ppbv" );
95        parametre.setUnite( unit );
96
97        return parametre;
98    }
99
100    public static List<Parametre> createParameters( @Nullable final Integer plateformId )
101    {
102        final Unite unitPpbv = new Unite();
103        unitPpbv.setUniteCode( "ppbv" );
104        final Unite units_1 = new Unite();
105        units_1.setUniteCode( "s-1" );
106        final Unite unitMbar = new Unite();
107        unitMbar.setUniteCode( "mbar" );
108        final Unite unitC = new Unite();
109        unitC.setUniteCode( "°C" );
110
111
112        final List<Parametre> parameters = new ArrayList<Parametre>();
113
114        final Parametre pOzone = createParameter();
115
116        final Parametre pJNO2 = new Parametre();
117        pJNO2.setParametreId( 1 );
118        pJNO2.setParametreNom( "Photolysis Frequency JNO2" );
119        pJNO2.setParametreCode( "JNO2" );
120        pJNO2.setUnite( units_1 );
121
122        final Parametre pPressure = new Parametre();
123        pPressure.setParametreId( 9 );
124        pPressure.setParametreNom( "Pressure" );
125        pPressure.setParametreCode( "P" );
126        pPressure.setUnite( unitMbar );
127
128        final Parametre pTemperature = new Parametre();
129        pTemperature.setParametreId( 10 );
130        pTemperature.setParametreNom( "Temperature" );
131        pTemperature.setParametreCode( "T" );
132        pTemperature.setUnite( unitC );
133
134        final Parametre pNO = new Parametre();
135        pNO.setParametreId( 4 );
136        pNO.setParametreNom( "Nitrogen Monoxide" );
137        pNO.setParametreCode( "NO" );
138        pNO.setUnite( unitPpbv );
139
140        final Parametre pNOx = new Parametre();
141        pNOx.setParametreId( 23 );
142        pNOx.setParametreNom( "Nitrogen Oxides" );
143        pNOx.setParametreCode( "NOx" );
144        pNOx.setUnite( unitPpbv );
145
146
147        if( null != plateformId && plateformId == 1 )
148        {
149            // SIRTA
150            parameters.add( pOzone );
151            parameters.add( pJNO2 );
152            parameters.add( pPressure );
153            parameters.add( pTemperature );
154            parameters.add( pNO );
155
156        }
157        else if( null != plateformId && plateformId == 3 )
158        {
159            // LHVP
160            parameters.add( pOzone );
161            parameters.add( pNO );
162            parameters.add( pNOx );
163        }
164        else if( null != plateformId && plateformId == 4 )
165        {
166            // ATR-42
167            parameters.add( pPressure );
168            parameters.add( pTemperature );
169        }
170        else if( null != plateformId && plateformId == 6 )
171        {
172            // Piper-Aztec
173        }
174        else
175        {
176            parameters.add( pOzone );
177            parameters.add( pJNO2 );
178            parameters.add( pPressure );
179            parameters.add( pTemperature );
180            parameters.add( pNO );
181            parameters.add( pNOx );
182        }
183
184        return parameters;
185    }
186
187    public static Parametre getParameterById( @NotNull final Integer parameterId )
188    {
189        if( parameterId == 3 )
190            return createParameter();
191
192        else if( parameterId == 1 )
193        {
194            final Parametre pJNO2 = new Parametre();
195            pJNO2.setParametreId( 1 );
196            pJNO2.setParametreNom( "Photolysis Frequency JNO2" );
197            pJNO2.setParametreCode( "JNO2" );
198            final Unite units_1 = new Unite();
199            units_1.setUniteCode( "s-1" );
200            pJNO2.setUnite( units_1 );
201            return pJNO2;
202        }
203        else if( parameterId == 9 )
204        {
205            final Parametre pPressure = new Parametre();
206            pPressure.setParametreId( 9 );
207            pPressure.setParametreNom( "Pressure" );
208            pPressure.setParametreCode( "P" );
209            final Unite unitMbar = new Unite();
210            unitMbar.setUniteCode( "mbar" );
211
212            pPressure.setUnite( unitMbar );
213            return pPressure;
214        }
215        else if( parameterId == 10 )
216        {
217            final Parametre pTemperature = new Parametre();
218            pTemperature.setParametreId( 10 );
219            pTemperature.setParametreNom( "Temperature" );
220            pTemperature.setParametreCode( "T" );
221            final Unite unitC = new Unite();
222            unitC.setUniteCode( "°C" );
223            pTemperature.setUnite( unitC );
224            return pTemperature;
225        }
226        else if( parameterId == 4 )
227        {
228
229            final Parametre pNO = new Parametre();
230            pNO.setParametreId( 4 );
231            pNO.setParametreNom( "Nitrogen Monoxide" );
232            pNO.setParametreCode( "NO" );
233            final Unite unitPpbv = new Unite();
234            unitPpbv.setUniteCode( "ppbv" );
235            pNO.setUnite( unitPpbv );
236            return pNO;
237        }
238        else if( parameterId == 23 )
239        {
240
241            final Parametre pNOx = new Parametre();
242            pNOx.setParametreId( 23 );
243            pNOx.setParametreNom( "Nitrogen Oxides" );
244            pNOx.setParametreCode( "NOx" );
245            final Unite unitPpbv = new Unite();
246            unitPpbv.setUniteCode( "ppbv" );
247            pNOx.setUnite( unitPpbv );
248            return pNOx;
249        }
250        else return null;
251    }
252
253    public static Data createValuesForTimeSerie( final Integer size, final Integer delta )
254    {
255        final double[] values = new double[size];
256        final Date[] dates = new Date[size];
257        final Calendar cal = Calendar.getInstance();
258
259        for( int i = 0; i < size; i++ )
260        {
261            values[i] = (double) i * Math.random();
262            cal.set( Calendar.MINUTE, (int) ( 2 + i + ( Math.random() * 8 ) ) );
263            dates[i] = cal.getTime();
264        }
265        return new Data( values, dates );
266    }
267
268    public static Data createValuesFor2D( final Integer size, final Integer delta )
269    {
270//                final double[] latitudeArray = {2.1, 2.2, 2.3};
271//                final double[] longitudeValues = {112.1, 12.2, 22.3};
272        final double[] latitudeValues = new double[size];
273        final double[] longitudeValues = new double[size];
274        final double[] parameterValues = new double[size];
275
276        for( int i = 0; i < size; i++ )
277        {
278            parameterValues[i] = Math.random() * i;
279            latitudeValues[i] = Math.random() * i;
280            longitudeValues[i] = Math.random() * i;
281        }
282
283        return new Data( parameterValues, latitudeValues, longitudeValues );
284    }
285
286    public static Data createRealValuesFor2D()
287    {
288        final double[] latitudeArray = {488993.0, 489001.0, 488984.0, 489010.0, 490005.0, 490015.0};
289        final double[] longitudeValues = {-1829.0, -1829.0, -1828.0, -1828.0, -1827.0, -1826.0};
290        final double[] parameterValues = {7.029, 0.0, 0.0, 0.0, 8.547, 0.0, 0.0, 0.0, 8.845, 0.0, 0.0, 0.0, 9.248, 0.0, 0.0, 0.0, 9.58, 0.0, 0.0, 0.0, 9.98, 0.0, 0.0, 0.0, 7.98, 0.0, 0.0, 0.0, 6.58, 0.0, 0.0, 0.0, 8.08, 0.0, 0.0, 0.0};
291
292        return new Data( parameterValues, latitudeArray, longitudeValues );
293    }
294
295}
Note: See TracBrowser for help on using the repository browser.