Changeset 32


Ignore:
Timestamp:
04/15/11 09:57:32 (13 years ago)
Author:
jbrlod
Message:

exp ref

Location:
trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/data_out/plot_results.m

    r16 r32  
    1 f=netcdf('exp_T.nc'); 
     1f=netcdf('exp_TS.nc'); 
    22 
    33addpath('../scripts/matlab_toolbox'); 
  • trunk/scripts/sinobad.i

    r19 r32  
    6464setm_dxmin   1.0e-4 
    6565setm_epsg    1.0e-10 
    66 setm_ddf1    100 
     66setm_ddf1    1 
    6767runm 
    6868##SAUVEGARDE 
  • trunk/src/Yworkdir/Y1sinobad.h

    r14 r32  
    8181//~~~~~~~~~~~~~~~~~~~~~~~~~ module ta_c~~~~~~~~~~~~~~~~~~~~~~~~~ 
    8282#define Yid_ta_c 1 
    83 #define YNBPTARGET_ta_c 0 
    84 #define YDEBTARGET_ta_c 0 
    85 #define YENDTARGET_ta_c 0 
    8683/*M3_VALST  */ #define   Ydelta_ta_c(v, i, j, k, t)      Yta_c[i][j][k]->Ydelta[t][v]  
    8784/*M3_VALST  */ #define   YD_ta_c(v, i, j, k, t)                  Yta_c[i][j][k]->Ydelta[t][v]  
     
    10198/*M3_VALSGI */ #define   YG1_ta_c(i, j, k)               Yta_c[i][j][k]->Ygrad[0]  
    10299/*M3_HERESGI*/ #define   YG1Y_ta_c               Yta_c[Yi][Yj][Yk]->Ygrad[0]  
    103 /*M3_VALSG  */ #define   Yepsi_ta_c(v, i, j, k)          Yta_c[i][j][k]->Yepsi[v]  
    104 /*M3_VALSG  */ #define   YE_ta_c(v, i, j, k)             Yta_c[i][j][k]->Yepsi[v]  
    105 /*M3_VALSGI */ #define   YE1_ta_c(i, j, k)               Yta_c[i][j][k]->Yepsi[0]  
    106100Yaota_c                  *Yta_c[YA1_S3d][YA2_S3d][YA3_S3d]; 
    107 /*M3_VALSG  */ #define   Ywish_ta_c(v, i, j, k)          Yta_c[i][j][k]->Ywish[v]  
    108 /*M3_VALSG  */ #define   YW_ta_c(v, i, j, k)             Yta_c[i][j][k]->Ywish[v]  
    109 /*M3_VALSGI */ #define   YW1_ta_c(i, j, k)               Yta_c[i][j][k]->Ywish[0]  
    110 /*M3_HERESGI*/ #define   YW1Y_ta_c               Yta_c[Yi][Yj][Yk]->Ywish[0]  
    111101 
    112102//~~~~~~~~~~~~~~~~~~~~~~~~~ module sa_c~~~~~~~~~~~~~~~~~~~~~~~~~ 
    113103#define Yid_sa_c 2 
     104#define YNBPTARGET_sa_c 0 
     105#define YDEBTARGET_sa_c 0 
     106#define YENDTARGET_sa_c 0 
    114107/*M3_VALST  */ #define   Ydelta_sa_c(v, i, j, k, t)      Ysa_c[i][j][k]->Ydelta[t][v]  
    115108/*M3_VALST  */ #define   YD_sa_c(v, i, j, k, t)                  Ysa_c[i][j][k]->Ydelta[t][v]  
     
    129122/*M3_VALSGI */ #define   YG1_sa_c(i, j, k)               Ysa_c[i][j][k]->Ygrad[0]  
    130123/*M3_HERESGI*/ #define   YG1Y_sa_c               Ysa_c[Yi][Yj][Yk]->Ygrad[0]  
     124/*M3_VALSG  */ #define   Yepsi_sa_c(v, i, j, k)          Ysa_c[i][j][k]->Yepsi[v]  
     125/*M3_VALSG  */ #define   YE_sa_c(v, i, j, k)             Ysa_c[i][j][k]->Yepsi[v]  
     126/*M3_VALSGI */ #define   YE1_sa_c(i, j, k)               Ysa_c[i][j][k]->Yepsi[0]  
    131127Yaosa_c                  *Ysa_c[YA1_S3d][YA2_S3d][YA3_S3d]; 
     128/*M3_VALSG  */ #define   Ywish_sa_c(v, i, j, k)          Ysa_c[i][j][k]->Ywish[v]  
     129/*M3_VALSG  */ #define   YW_sa_c(v, i, j, k)             Ysa_c[i][j][k]->Ywish[v]  
     130/*M3_VALSGI */ #define   YW1_sa_c(i, j, k)               Ysa_c[i][j][k]->Ywish[0]  
     131/*M3_HERESGI*/ #define   YW1Y_sa_c               Ysa_c[Yi][Yj][Yk]->Ywish[0]  
    132132 
    133133//~~~~~~~~~~~~~~~~~~~~~~~~~ module ua_c~~~~~~~~~~~~~~~~~~~~~~~~~ 
     
    24032403              double     Ystate[YNBS_ta_c]; 
    24042404              double     Ygrad[YNBS_ta_c]; 
    2405               double     Yepsi[YNBS_ta_c]; 
    2406               double     Ywish[YNBS_ta_c]; 
    24072405              double     Ydelta[1][YNBS_ta_c]; 
    24082406 
     
    24192417              double     Ystate[YNBS_sa_c]; 
    24202418              double     Ygrad[YNBS_sa_c]; 
     2419              double     Yepsi[YNBS_sa_c]; 
     2420              double     Ywish[YNBS_sa_c]; 
    24212421              double     Ydelta[1][YNBS_sa_c]; 
    24222422 
     
    40514051void Yrazgrad_ta_c();  
    40524052void Ysetstate_ta_c();  
    4053 void Ysetepsi_ta_c();  
    4054 void Yadjust_ta_c();  
    4055 void Y3getstate_ta_c(float x[]);  
    4056 void Y3valstate_ta_c();  
    4057 void Y3valgrad_ta_c(float g[]); void Yrazgrad_sa_c();  
     4053void Yrazgrad_sa_c();  
    40584054void Ysetstate_sa_c();  
    4059 void Yrazgrad_ua_c();  
     4055void Ysetepsi_sa_c();  
     4056void Yadjust_sa_c();  
     4057void Y3getstate_sa_c(float x[]);  
     4058void Y3valstate_sa_c();  
     4059void Y3valgrad_sa_c(float g[]); void Yrazgrad_ua_c();  
    40604060void Ysetstate_ua_c();  
    40614061void Yrazgrad_va_c();  
     
    42584258struct Yst_modul YTabMod[87] = { 
    42594259        {"sshn_c", *Ysshn_c, 2, 32, 22, 0, 0, 1, 0, 0, 0, 0, 0, 1.000000e+00, 1.000000e+00, 1.000000e+00, 0, "S3d"}, 
    4260         {"ta_c", *Yta_c, 3, 32, 22, 31, 0, 1, 0, 0, 1, 0, 0, 1.000000e+00, 1.000000e+00, 1.000000e+00, 0, "S3d"}, 
    4261         {"sa_c", *Ysa_c, 3, 32, 22, 31, 0, 1, 0, 0, 0, 0, 0, 1.000000e+00, 1.000000e+00, 1.000000e+00, 0, "S3d"}, 
     4260        {"ta_c", *Yta_c, 3, 32, 22, 31, 0, 1, 0, 0, 0, 0, 0, 1.000000e+00, 1.000000e+00, 1.000000e+00, 0, "S3d"}, 
     4261        {"sa_c", *Ysa_c, 3, 32, 22, 31, 0, 1, 0, 0, 1, 0, 0, 1.000000e+00, 1.000000e+00, 1.000000e+00, 0, "S3d"}, 
    42624262        {"ua_c", *Yua_c, 3, 32, 22, 31, 0, 1, 0, 0, 0, 0, 0, 1.000000e+00, 1.000000e+00, 1.000000e+00, 0, "S3d"}, 
    42634263        {"va_c", *Yva_c, 3, 32, 22, 31, 0, 1, 0, 0, 0, 0, 0, 1.000000e+00, 1.000000e+00, 1.000000e+00, 0, "S3d"}, 
  • trunk/src/Yworkdir/Y2sinobad.h

    r14 r32  
    111111                 for (int Yw2=0; Yw2<YA2_S3d; ++Yw2){ 
    112112                         if ((Ysshn_c(Yw1, Yw2)= new Yaosshn_c ())==NULL) Ycreate_errnew();}} 
    113 }/*M3_ADJUS*/  
    114 void Yadjust_ta_c() 
    115 { 
    116          for (int Yw1=0; Yw1<YA1_S3d; ++Yw1)  
    117          for (int Yw2=0; Yw2<YA2_S3d; ++Yw2)  
    118          for (int Yw3=0; Yw3<YA3_S3d; ++Yw3)  
    119          for (int Yws=0; Yws<YNBS_ta_c; ++Yws)  
    120          { Ystate_ta_c(Yws, Yw1, Yw2, Yw3) -= Yepsi_ta_c(Yws, Yw1, Yw2, Yw3) * Ygrad_ta_c(Yws, Yw1, Yw2, Yw3); 
    121         } 
    122 }/*M3_GCTOTB  */  
    123 void YgradCTOtab_ta_c(YREAL tab[]) 
    124 { 
    125          for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
    126                  for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
    127                          for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
    128                                  for (int Yws=0; Yws<YNBS_ta_c; ++Yws){ 
    129                                          tab[Y3windice] += YG_ta_c(Yws, Yw1, Yw2, Yw3); ++Y3windice;}}}} 
    130 }/*M3_VSTA*/  
    131 void Y3valstate_ta_c() 
    132 { 
    133          for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
    134                  for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
    135                          for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
    136                                  for (int Yws=0; Yws<YNBS_ta_c; ++Yws){ 
    137                                          Y3x[Y3windice] = Yta_c(Yw1, Yw2, Yw3)->Ystate[Yws]; ++Y3windice;}}}} 
    138 }/*M3_GSTA*/  
    139 void Y3getstate_ta_c(float x[]) 
    140 { 
    141          for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
    142                  for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
    143                          for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
    144                                  for (int Yws=0; Yws<YNBS_ta_c; ++Yws){ 
    145                                          Yta_c(Yw1, Yw2, Yw3)->Ystate[Yws] = x[Y3windice]; ++Y3windice;}}}} 
    146 }/*M3_VGRAD*/  
    147 void Y3valgrad_ta_c(float g[]) 
    148 { 
    149          for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
    150                  for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
    151                          for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
    152                                  for (int Yws=0; Yws<YNBS_ta_c; ++Yws){ 
    153                                          g[Y3windice] = Yta_c(Yw1, Yw2, Yw3)->Ygrad[Yws]; ++Y3windice;}}}} 
    154113}/*M3_TBTOG   */  
    155114void YtabTOgrad_ta_c(YREAL tab[]) 
     
    265224void Yio_ta_c(int Yws, int Yw1, int Yw2, int Yw3, int Ywt, double val)   
    266225{  Yiorwf ("ta_c", Yws, Yw1, Yw2, Yw3, Ywt, &YS_ta_c(Yws, Yw1, Yw2, Yw3), val); 
    267 }/*M0_OUTOB*/  
    268 int Youtoobs_ta_c(YioKind yiokind, int Yws, int Ywt, int arbpdt) 
    269 { 
    270          Yaobs.time = arbpdt; 
    271          Yaobs.imod = Yimod("ta_c"); 
    272          Yaobs.smod = Yws;/*M3_OUTOB*/  
    273          for (int Yw1=0; Yw1<YA1_S3d; ++Yw1) 
    274          for (int Yw2=0; Yw2<YA2_S3d; ++Yw2) 
    275          for (int Yw3=0; Yw3<YA3_S3d; ++Yw3) 
    276          {      if(select_io(yiokind, "ta_c", Yws, Yw1, Yw2, Yw3, Ywt, &Ystate_ta_c(Yws, Yw1, Yw2, Yw3))) 
    277                         {       Yaobs.iaxe = Yw1; Yaobs.jaxe = Yw2; Yaobs.kaxe = Yw3; 
    278                                 Yaobs.vobs = Ystate_ta_c(Yws, Yw1, Yw2, Yw3); 
    279                                 if(!Yobs_insert (&Yaobs)) return(0); 
    280                         } 
    281          }/*M9_OUTOB*/   
    282          return(1); 
    283 }/*M3_SEPS*/  
    284 void Ysetepsi_ta_c(double val) 
    285 { 
    286          for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
    287                  for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
    288                          for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
    289                                  for (int Yws=0; Yws<YNBS_ta_c; ++Yws){ 
    290                                          Yta_c(Yw1, Yw2, Yw3)->Yepsi[Yws] = val;}}}} 
    291226}/*M3_CREY*/  
    292227void Ycreate_ta_c()   
     
    296231                         for (int Yw3=0; Yw3<YA3_S3d; ++Yw3){ 
    297232                                 if ((Yta_c(Yw1, Yw2, Yw3) = new Yaota_c ())==NULL) Ycreate_errnew();}}} 
    298 }/*M3_SWISH*/  
    299 void Ysetwish_ta_c(double val) 
     233}/*M3_ADJUS*/  
     234void Yadjust_sa_c() 
     235{ 
     236         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1)  
     237         for (int Yw2=0; Yw2<YA2_S3d; ++Yw2)  
     238         for (int Yw3=0; Yw3<YA3_S3d; ++Yw3)  
     239         for (int Yws=0; Yws<YNBS_sa_c; ++Yws)  
     240         { Ystate_sa_c(Yws, Yw1, Yw2, Yw3) -= Yepsi_sa_c(Yws, Yw1, Yw2, Yw3) * Ygrad_sa_c(Yws, Yw1, Yw2, Yw3); 
     241        } 
     242}/*M3_GCTOTB  */  
     243void YgradCTOtab_sa_c(YREAL tab[]) 
    300244{ 
    301245         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
    302246                 for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
    303247                         for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
    304                                  for (int Yws=0; Yws<YNBS_ta_c; ++Yws){ 
    305                                          Ywish_ta_c(Yws, Yw1, Yw2, Yw3) = val;}}}} 
     248                                 for (int Yws=0; Yws<YNBS_sa_c; ++Yws){ 
     249                                         tab[Y3windice] += YG_sa_c(Yws, Yw1, Yw2, Yw3); ++Y3windice;}}}} 
     250}/*M3_VSTA*/  
     251void Y3valstate_sa_c() 
     252{ 
     253         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
     254                 for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
     255                         for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
     256                                 for (int Yws=0; Yws<YNBS_sa_c; ++Yws){ 
     257                                         Y3x[Y3windice] = Ysa_c(Yw1, Yw2, Yw3)->Ystate[Yws]; ++Y3windice;}}}} 
     258}/*M3_GSTA*/  
     259void Y3getstate_sa_c(float x[]) 
     260{ 
     261         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
     262                 for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
     263                         for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
     264                                 for (int Yws=0; Yws<YNBS_sa_c; ++Yws){ 
     265                                         Ysa_c(Yw1, Yw2, Yw3)->Ystate[Yws] = x[Y3windice]; ++Y3windice;}}}} 
     266}/*M3_VGRAD*/  
     267void Y3valgrad_sa_c(float g[]) 
     268{ 
     269         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
     270                 for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
     271                         for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
     272                                 for (int Yws=0; Yws<YNBS_sa_c; ++Yws){ 
     273                                         g[Y3windice] = Ysa_c(Yw1, Yw2, Yw3)->Ygrad[Yws]; ++Y3windice;}}}} 
    306274}/*M3_TBTOG   */  
    307275void YtabTOgrad_sa_c(YREAL tab[]) 
     
    417385void Yio_sa_c(int Yws, int Yw1, int Yw2, int Yw3, int Ywt, double val)   
    418386{  Yiorwf ("sa_c", Yws, Yw1, Yw2, Yw3, Ywt, &YS_sa_c(Yws, Yw1, Yw2, Yw3), val); 
     387}/*M0_OUTOB*/  
     388int Youtoobs_sa_c(YioKind yiokind, int Yws, int Ywt, int arbpdt) 
     389{ 
     390         Yaobs.time = arbpdt; 
     391         Yaobs.imod = Yimod("sa_c"); 
     392         Yaobs.smod = Yws;/*M3_OUTOB*/  
     393         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1) 
     394         for (int Yw2=0; Yw2<YA2_S3d; ++Yw2) 
     395         for (int Yw3=0; Yw3<YA3_S3d; ++Yw3) 
     396         {      if(select_io(yiokind, "sa_c", Yws, Yw1, Yw2, Yw3, Ywt, &Ystate_sa_c(Yws, Yw1, Yw2, Yw3))) 
     397                        {       Yaobs.iaxe = Yw1; Yaobs.jaxe = Yw2; Yaobs.kaxe = Yw3; 
     398                                Yaobs.vobs = Ystate_sa_c(Yws, Yw1, Yw2, Yw3); 
     399                                if(!Yobs_insert (&Yaobs)) return(0); 
     400                        } 
     401         }/*M9_OUTOB*/   
     402         return(1); 
     403}/*M3_SEPS*/  
     404void Ysetepsi_sa_c(double val) 
     405{ 
     406         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
     407                 for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
     408                         for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
     409                                 for (int Yws=0; Yws<YNBS_sa_c; ++Yws){ 
     410                                         Ysa_c(Yw1, Yw2, Yw3)->Yepsi[Yws] = val;}}}} 
    419411}/*M3_CREY*/  
    420412void Ycreate_sa_c()   
     
    424416                         for (int Yw3=0; Yw3<YA3_S3d; ++Yw3){ 
    425417                                 if ((Ysa_c(Yw1, Yw2, Yw3) = new Yaosa_c ())==NULL) Ycreate_errnew();}}} 
     418}/*M3_SWISH*/  
     419void Ysetwish_sa_c(double val) 
     420{ 
     421         for (int Yw1=0; Yw1<YA1_S3d; ++Yw1){ 
     422                 for (int Yw2=0; Yw2<YA2_S3d;  ++Yw2){ 
     423                         for (int Yw3=0; Yw3<YA3_S3d;  ++Yw3){ 
     424                                 for (int Yws=0; Yws<YNBS_sa_c; ++Yws){ 
     425                                         Ywish_sa_c(Yws, Yw1, Yw2, Yw3) = val;}}}} 
    426426}/*M3_TBTOG   */  
    427427void YtabTOgrad_ua_c(YREAL tab[]) 
     
    1336713367{        
    1336813368         if(1==0); 
    13369          else if (strcmp(nmmod, "ta_c") == 0) 
    13370                                  YW_ta_c(Yws, Yw1, Yw2, Yw3) = YS_ta_c(Yws, Yw1, Yw2, Yw3) - vobs; 
     13369         else if (strcmp(nmmod, "sa_c") == 0) 
     13370                                 YW_sa_c(Yws, Yw1, Yw2, Yw3) = YS_sa_c(Yws, Yw1, Yw2, Yw3) - vobs; 
    1337113371         else if (strcmp(nmmod, "tb") == 0) 
    1337213372                                 YW_tb(Yws, Yw1, Yw2, Yw3) = YS_tb(Yws, Yw1, Yw2, Yw3, Ywt) - vobs; 
     
    1338313383{        
    1338413384         if(1==0); 
    13385          else if (strcmp(nmmod, "ta_c") == 0) 
    13386                                  YG_ta_c(Yws, Yw1, Yw2, Yw3) += Ycostdiff(YW_ta_c(Yws, Yw1, Yw2, Yw3), YW_ta_c(Yws, Yw1, Yw2, Yw3)); 
     13385         else if (strcmp(nmmod, "sa_c") == 0) 
     13386                                 YG_sa_c(Yws, Yw1, Yw2, Yw3) += Ycostdiff(YW_sa_c(Yws, Yw1, Yw2, Yw3), YW_sa_c(Yws, Yw1, Yw2, Yw3)); 
    1338713387         else if (strcmp(nmmod, "tb") == 0) 
    1338813388                                 YG_tb(Yws, Yw1, Yw2, Yw3, Ywt) += Ycostdiff(YW_tb(Yws, Yw1, Yw2, Yw3), YW_tb(Yws, Yw1, Yw2, Yw3)); 
     
    1339913399{ 
    1340013400         if(1==0); 
    13401          else if (strcmp(nmmod, "ta_c") == 0) Youtoobs_ta_c(yiokind, numout, pdt, arbpdt); 
     13401         else if (strcmp(nmmod, "sa_c") == 0) Youtoobs_sa_c(yiokind, numout, pdt, arbpdt); 
    1340213402         else if (strcmp(nmmod, "tb") == 0) Youtoobs_tb(yiokind, numout, pdt, arbpdt); 
    1340313403         else if (strcmp(nmmod, "sb") == 0) Youtoobs_sb(yiokind, numout, pdt, arbpdt); 
     
    1340813408void Yadjust_all ()  
    1340913409{ 
    13410          Yadjust_ta_c (); 
     13410         Yadjust_sa_c (); 
    1341113411} 
    1341213412void Yrazgrad_all ()  
     
    1368913689void Ysetwish_mod (int imod, YREAL val)  
    1369013690{       if(1==0); 
    13691         else if (imod==1) Ysetwish_ta_c(val); 
     13691        else if (imod==2) Ysetwish_sa_c(val); 
    1369213692        else if (imod==38) Ysetwish_tb(val); 
    1369313693        else if (imod==39) Ysetwish_sb(val); 
     
    1378913789void YgradCTOtab_target (YREAL tab[])  
    1379013790{       //Y3windice = 0; 
    13791          YgradCTOtab_ta_c (tab); 
     13791         YgradCTOtab_sa_c (tab); 
    1379213792} 
    1379313793void YtabTOgrad_target (YREAL tab[])  
    1379413794{       //Y3windice = 0; 
    13795          YtabTOgrad_ta_c (tab); 
     13795         YtabTOgrad_sa_c (tab); 
    1379613796} 
    1379713797void Y3getstate_all (float x[])  
    1379813798{        Y3windice = 0; 
    13799          Y3getstate_ta_c (x); 
     13799         Y3getstate_sa_c (x); 
    1380013800} 
    1380113801void Y3valstate_all ()  
    1380213802{        Y3windice = 0; 
    13803          Y3valstate_ta_c (); 
     13803         Y3valstate_sa_c (); 
    1380413804} 
    1380513805void Y3valgrad_all (float g[])  
    1380613806{        Y3windice = 0; 
    13807          Y3valgrad_ta_c (g); 
     13807         Y3valgrad_sa_c (g); 
    1380813808} 
    1380913809void YdeltaEQPstate_traj(int itraj, char *norkmod, int frompdt, int topdt, double pfact)  
     
    1381413814                if ( !strcmp(norkmod, "sshn_c") || !strcmp(norkmod, "Y#A") ) 
    1381513815         YdeltaEQPstate_sshn_c (0, 1, pfact); 
    13816                 if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
     13816                if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") ) 
    1381713817         YdeltaEQPstate_ta_c (0, 1, pfact); 
    13818                 if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") ) 
     13818                if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
    1381913819         YdeltaEQPstate_sa_c (0, 1, pfact); 
    1382013820                if ( !strcmp(norkmod, "ua_c") || !strcmp(norkmod, "Y#A") ) 
     
    1399313993void YdeltaEQPstate_target(double pfact)  
    1399413994{ 
    13995          YdeltaEQPstate_ta_c (0, 1, pfact); 
     13995         YdeltaEQPstate_sa_c (0, 1, pfact); 
    1399613996} 
    1399713997void YdeltaEQPgrad_target(double pfact)  
    1399813998{ 
    13999          YdeltaEQPgrad_ta_c (0, 1, pfact); 
     13999         YdeltaEQPgrad_sa_c (0, 1, pfact); 
    1400014000} 
    1400114001void YstateEQPdelta_traj(int itraj, char *norkmod, int frompdt, int topdt, double pfact)  
     
    1400614006                if ( !strcmp(norkmod, "sshn_c") || !strcmp(norkmod, "Y#A") ) 
    1400714007         YstateEQPdelta_sshn_c (0, 1, pfact); 
    14008                 if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
     14008                if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") ) 
    1400914009         YstateEQPdelta_ta_c (0, 1, pfact); 
    14010                 if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") ) 
     14010                if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
    1401114011         YstateEQPdelta_sa_c (0, 1, pfact); 
    1401214012                if ( !strcmp(norkmod, "ua_c") || !strcmp(norkmod, "Y#A") ) 
     
    1418514185void YstateEQPdelta_target(double pfact)  
    1418614186{ 
    14187          YstateEQPdelta_ta_c (0, 1, pfact); 
     14187         YstateEQPdelta_sa_c (0, 1, pfact); 
    1418814188} 
    1418914189void YstateEQPOdelta_target(double pfact, char *codop)  
    1419014190{ 
    14191          YstateEQPOdelta_ta_c (0, 1, pfact, codop); 
     14191         YstateEQPOdelta_sa_c (0, 1, pfact, codop); 
    1419214192} 
    1419314193void YstateEQAPTdelta_target(double pfact, YREAL tab[])  
    1419414194{ 
    14195          YstateEQAPTdelta_ta_c (0, 1, pfact, tab); 
     14195         YstateEQAPTdelta_sa_c (0, 1, pfact, tab); 
    1419614196} 
    1419714197void YgradEQPstate_traj(int itraj, char *norkmod, int frompdt, int topdt, double pfact)  
     
    1420214202                if ( !strcmp(norkmod, "sshn_c") || !strcmp(norkmod, "Y#A") ) 
    1420314203         YgradEQPstate_sshn_c(pfact); 
    14204                 if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
     14204                if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") ) 
    1420514205         YgradEQPstate_ta_c(pfact); 
    14206                 if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") ) 
     14206                if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
    1420714207         YgradEQPstate_sa_c(pfact); 
    1420814208                if ( !strcmp(norkmod, "ua_c") || !strcmp(norkmod, "Y#A") ) 
     
    1438114381void YgradEQPstate_target(double pfact)  
    1438214382{ 
    14383          YgradEQPstate_ta_c (pfact); 
     14383         YgradEQPstate_sa_c (pfact); 
    1438414384} 
    1438514385void YgradEQPOstate_target(double pfact, char *codop)  
    1438614386{ 
    14387          YgradEQPOstate_ta_c (pfact, codop); 
     14387         YgradEQPOstate_sa_c (pfact, codop); 
    1438814388} 
    1438914389void YstateTOtab_traj (int itraj, char *norkmod, int frompdt, int topdt, YREAL tab[])  
     
    1439414394                if ( !strcmp(norkmod, "sshn_c") || !strcmp(norkmod, "Y#A") ) 
    1439514395         YstateTOtab_sshn_c (tab); 
    14396                 if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
     14396                if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") ) 
    1439714397         YstateTOtab_ta_c (tab); 
    14398                 if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") ) 
     14398                if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
    1439914399         YstateTOtab_sa_c (tab); 
    1440014400                if ( !strcmp(norkmod, "ua_c") || !strcmp(norkmod, "Y#A") ) 
     
    1457314573void YstateTOtab_target (YREAL tab[])  
    1457414574{       //Y3windice = 0; 
    14575          YstateTOtab_ta_c (tab); 
     14575         YstateTOtab_sa_c (tab); 
    1457614576} 
    1457714577void YgradTOtab_traj (int itraj, char *norkmod, int frompdt, int topdt, YREAL tab[])  
     
    1458214582                if ( !strcmp(norkmod, "sshn_c") || !strcmp(norkmod, "Y#A") ) 
    1458314583         YgradTOtab_sshn_c (tab); 
    14584                 if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
     14584                if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") ) 
    1458514585         YgradTOtab_ta_c (tab); 
    14586                 if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") ) 
     14586                if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
    1458714587         YgradTOtab_sa_c (tab); 
    1458814588                if ( !strcmp(norkmod, "ua_c") || !strcmp(norkmod, "Y#A") ) 
     
    1476114761void YgradTOtab_target (YREAL tab[])  
    1476214762{       //Y3windice = 0; 
    14763          YgradTOtab_ta_c (tab); 
     14763         YgradTOtab_sa_c (tab); 
    1476414764} 
    1476514765void YtabTOgrad_traj (int itraj, char *norkmod, int frompdt, int topdt, YREAL tab[])  
     
    1477014770                if ( !strcmp(norkmod, "sshn_c") || !strcmp(norkmod, "Y#A") ) 
    1477114771                         YtabTOgrad_sshn_c (tab); 
    14772                 if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
     14772                if ( !strcmp(norkmod, "ta_c") || !strcmp(norkmod, "Y#A") ) 
    1477314773                         YtabTOgrad_ta_c (tab); 
    14774                 if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") ) 
     14774                if ( !strcmp(norkmod, "sa_c") || !strcmp(norkmod, "Y#A") || !strcmp(norkmod, "Y#T") ) 
    1477514775                         YtabTOgrad_sa_c (tab); 
    1477614776                if ( !strcmp(norkmod, "ua_c") || !strcmp(norkmod, "Y#A") ) 
     
    1512715127         { 
    1512815128                         if (!strcmp(argv[0], "setepsi_all") || !strcmp(argv[0], "SETEPSI_ALL")){all=1; val=atof(argv[1]);} else val=atof(argv[2]); 
    15129                          if (!strcmp(argv[1], "ta_c") || all) 
    15130                                          {Ysetepsi_ta_c(val);codret=1;} 
     15129                         if (!strcmp(argv[1], "sa_c") || all) 
     15130                                         {Ysetepsi_sa_c(val);codret=1;} 
    1513115131         } 
    1513215132         else codret=0; 
  • trunk/src/cost.dat

    r14 r32  
    22 0.0000000000000000e+00 
    33 0.0000000000000000e+00 
    4  2.9733593674719423e+03 
    5  2.9046564674634410e+03 
    6  2.8844078750994972e+03 
    7  2.1533662170138909e+03 
    8  3.7645353988317231e+02 
    9  2.1743622020262393e+02 
    10  1.3325376402313574e+02 
    11  1.0089472892137428e+02 
    12  9.3476389696007189e+01 
    13  8.8719928304913211e+01 
    14  9.0834543682672248e+01 
    15  8.8130698029267435e+01 
    16  9.0170152793152795e+01 
    17  8.8265477839190027e+01 
    18  8.8281377590830218e+01 
    19  8.8710953227195915e+01 
    20  8.9177210220475857e+01 
    21  9.0343293430849968e+01 
    22  9.0156125898119669e+01 
    23  8.7443014766499118e+01 
    24  8.7378898959154185e+01 
    25  9.0197838294519727e+01 
    26  9.0231123456027703e+01 
    27  9.0251747653212306e+01 
    28  9.0266310888836969e+01 
    29  8.7354177212549217e+01 
    30  8.7352312614036819e+01 
    31  9.0268596517281566e+01 
    32  9.0270225161585003e+01 
     4 7.9500011475282708e+00 
     5 6.9584567722863468e+01 
     6 6.3544557715163670e+00 
     7 4.5195261866713539e+00 
     8 4.1368024754435542e+00 
     9 4.1173925937788400e+00 
     10 4.4705004404786965e+00 
     11 4.4772946613443398e+00 
     12 4.3418385150596306e+00 
     13 4.3353102149522806e+00 
     14 4.2495486911837279e+00 
     15 4.2535273008791705e+00 
     16 4.2345336365761872e+00 
     17 4.2197520449371364e+00 
     18 4.2092179852297607e+00 
     19 4.1123363902328558e+00 
     20 4.1113762968592953e+00 
     21 4.1107720985439284e+00 
     22 4.1103175097543936e+00 
     23 4.2097782534273280e+00 
  • trunk/src/sinobad.d

    r14 r32  
    4747modul    sshn_c                 space   S3d inter YA1 YA2       noward            output 1      |target 
    4848 
    49 modul    ta_c                   space   S3d                     noward            output 1      target 
     49modul    ta_c                   space   S3d                     noward            output 1      |target 
    5050 
    5151#modul   ta_c                   space   S3d     input array NPCA                  output 1       
    5252 
    53 modul    sa_c                   space   S3d                     noward            output 1      |target 
     53modul    sa_c                   space   S3d                     noward            output 1      target 
    5454modul    ua_c                   space   S3d                     noward            output 1      |target 
    5555modul    va_c                   space   S3d                     noward            output 1      |target 
Note: See TracChangeset for help on using the changeset viewer.