Changeset 75
- Timestamp:
- 03/02/12 09:38:08 (12 years ago)
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/data_out/plot_results.m
r38 r75 1 f=netcdf('exp_T .nc');1 f=netcdf('exp_T_3D_all_ebxhz.nc'); 2 2 3 3 addpath('../scripts/matlab_toolbox'); … … 11 11 suff=cell(0,2); 12 12 suff(end+1,:)={'a_c_init','first guess (FG)'}; 13 suff(end+1,:)={'b_forw0_4 8','forward du FG'};13 suff(end+1,:)={'b_forw0_49','forward du FG'}; 14 14 suff(end+1,:)={'a_c_fin','param control final (AP)'}; 15 suff(end+1,:)={'b_forwfin_ 48','forward du PA'};15 suff(end+1,:)={'b_forwfin_99','forward du PA'}; 16 16 suff(end+1,:)={'a_c_true','parametre vrai (TP)'}; 17 suff(end+1,:)={'b_obs_ 48','forward du TP'};17 suff(end+1,:)={'b_obs_99','forward du TP'}; 18 18 19 19 suff2=cell(0,2); 20 20 suff2(end+1,:)={'n_c_init','first guess (FG)'}; 21 suff2(end+1,:)={'b_forw0_4 8','forward du FG'};21 suff2(end+1,:)={'b_forw0_49','forward du FG'}; 22 22 suff2(end+1,:)={'n_c_fin','param control final (AP)'}; 23 suff2(end+1,:)={'b_forwfin_ 48','forward du PA'};23 suff2(end+1,:)={'b_forwfin_99','forward du PA'}; 24 24 suff2(end+1,:)={'n_c_true','parametre vrai (TP)'}; 25 suff2(end+1,:)={'b_obs_ 48','forward du TP'};25 suff2(end+1,:)={'b_obs_99','forward du TP'}; 26 26 27 27 … … 133 133 n2=max(paramy{delta{k}(1)}(:,2)); 134 134 n3=max(paramy{delta{k}(1)}(:,3)); 135 136 137 for iz=1:length(unique(paramy{delta{k}(1)}(:,3))) 135 138 iok=find(paramy{delta{k}(1)}(:,1)>1 & paramy{delta{k}(1)}(:,1)<n1 & paramy{delta{k}(1)}(:,2)>1 & ... 139 paramy{delta{k}(1)}(:,2)<n2 & paramy{delta{k}(1)}(:,3)==iz); 140 141 [Nz(j,k,iz),RPDz(j,k,iz),URPDz(j,k,iz),MADz(j,k,iz),RMSz(j,k,iz),slopez(j,k,iz),interceptz(j,k,iz),r2z(j,k,iz) ]=make_stats(paramy{delta{k,1}(1)}(iok,end),paramy{delta{k,1}(2)} (iok,end)); 142 end 143 iok=find(paramy{delta{k}(1)}(:,1)>1 & paramy{delta{k}(1)}(:,1)<n1 & paramy{delta{k}(1)}(:,2)>1 & ... 136 144 paramy{delta{k}(1)}(:,2)<n2 & paramy{delta{k}(1)}(:,3)<n3); 137 145 end -
trunk/scripts/sinobad_0D.i
r72 r75 14 14 init_kt 800 15 15 true_target_in_tab ta_c 16 xinitnc ../data_out/exp_T_ qs.nc16 xinitnc ../data_out/exp_T_ebx0.nc 17 17 18 xwriteout 0 true ../data_out/exp_T_ qs.nc18 xwriteout 0 true ../data_out/exp_T_ebx0.nc 19 19 20 20 print_time ON … … 26 26 27 27 ##OBSERVATION 28 xwriteout 1 00 obs_99 ../data_out/exp_T_qs.nc28 xwriteout 120 obs_99 ../data_out/exp_T_ebx0.nc 29 29 30 30 xrst_save ../data_in/file_rest/GYRE_799_restart_yao_true.nc … … 39 39 40 40 41 savestate tb 1 ijk 10% A 3 ../data_out/tb_0D_obs_100.dat 42 43 loadobs tb 1 ijk 0 A 1 ../data_out/tb_0D_obs_100.dat D 41 #savestate tb 1 ijk 10% A 3 ../data_out/tb_0D_obs_100.dat 42 savestate tb 1 ijk 120 A 3 ../data_out/tb_0D_obs_120.dat 43 44 loadobs tb 1 ijk 0 A 1 ../data_out/tb_0D_obs_120.dat D 44 45 45 46 … … 54 55 print_time OFF 55 56 56 xwriteout 0 init ../data_out/exp_T_ qs.nc57 xwriteout 1 00 forw0_49 ../data_out/exp_T_qs.nc57 xwriteout 0 init ../data_out/exp_T_ebx0.nc 58 xwriteout 120 forw0_49 ../data_out/exp_T_ebx0.nc 58 59 savestate tb 1 ijk 0 A 3 ../data_out/Tb_fg_0D.dat 60 61 #EBAUCHE 62 outoebx ta_c 1 0 63 set_bcoef ta_c 0.1 64 59 65 60 66 #goto FINRUN … … 74 80 setm_nsim 100 75 81 setm_dxmin 1.0e-4 76 setm_epsg 1.0e- 1082 setm_epsg 1.0e-8 77 83 setm_ddf1 1 78 set_qs_parts 484 set_qs_parts 1 79 85 80 runm 86 runm 87 88 #Pour faire sur un nombre limité de pas de temps 89 #runm 10 90 #10 : temps absolu 91 81 92 ##SAUVEGARDE 82 xwriteout 0 fin ../data_out/exp_T_ qs.nc83 xwriteout 1 00 forwfin_99 ../data_out/exp_T_qs.nc84 savestate tb 1 ijk 0 A 3 ../data_out/Tb_analyse_0D_ qs.dat85 xrst_save ../data_in/file_rest/GYRE_799_restart_yao_ qs.nc93 xwriteout 0 fin ../data_out/exp_T_ebx0.nc 94 xwriteout 120 forwfin_99 ../data_out/exp_T_ebx0.nc 95 savestate tb 1 ijk 0 A 3 ../data_out/Tb_analyse_0D_ebx0.dat 96 xrst_save ../data_in/file_rest/GYRE_799_restart_yao_ebx0.nc 86 97 init_kt 800 87 98 set_modeltime 0 88 xrst_save ../data_in/file_rest/GYRE_800_restart_yao_ qs.nc99 xrst_save ../data_in/file_rest/GYRE_800_restart_yao_ebx0.nc 89 100 90 101 -
trunk/src/sinobad.h
r72 r75 46 46 #define hdivn_at_TU( i, j, k) (hdivn_at_TU[(k)*(NY*NX)+(j)*(NX)+(i)]) 47 47 #define gcx_at_TU( i, j) (gcx_at_TU[(j)*(NX)+(i)]) 48 #define masque_obs( i, j) (masque_obs[(j)*(NX)+(i)]) 49 50 48 51 double tb_neuler1[NZ*NY*NX]; // 49 52 double sb_neuler1[NZ*NY*NX]; // … … 54 57 double hdivn_at_TU[NZ*NY*NX]; // 55 58 double gcx_at_TU[NY*NX]; // 59 60 short masque_obs[NY*NX]; // 56 61 57 62 void true_target_in_tab(int argc, char *argv[]); // charge YS_*a_c(0,i,j,k) dans true_*a_c(i,j,k) … … 107 112 void xistate_init(int argc, char *argv[]); 108 113 void xrst_save(int argc, char *argv[]); 109 114 void xinit_masque_obs(); 110 115 ////////////////////////////////////////////////////////////// 111 116 // Les fonctions OBLIGATOIRES … … 163 168 normfil(); 164 169 #endif 170 xinit_masque_obs(); 165 171 xsolmat_init(); 166 172 xflt_rst(); … … 195 201 void after_it (int nit) 196 202 { 197 xdisplay();203 // xdisplay(); 198 204 } 199 205 //_____________________________________________________________________________ … … 253 259 return(0); 254 260 } 261 262 if(indic==YIO_SAVESTATE && (!strcmp(nmmod,"tb") || !strcmp(nmmod,"sb")) && savemode==3) return(masque_obs(iaxe,jaxe)); 255 263 256 264 … … 647 655 } 648 656 657 void xinit_masque_obs(){ 658 int i,j; 659 for (i=0;i<NX;i++) 660 for(j=0;j<NY;j++) 661 masque_obs(i,j)=0; 662 } 663 649 664 void xchangesavemode(int argc, char *argv[]){ 650 665 short newmode=atoi(argv[1]); … … 656 671 printf("\n savemode : 1 point (Yi=%d,Yj=%d,Yk=%d)\n",isave,jsave,ksave); 657 672 } 658 659 } 673 if (newmode==3) { //sauver N profil 674 int Np; // Nombre d'obs 675 int ix,iy,comp=0; //indices de boucles 676 float dx,dy; // pas dans le tableau masque 677 int nx,ny ; //nombre d'obs selon x et y 678 Np=atoi(argv[2]); 679 nx=(int)sqrt(Np); 680 ny=Np/nx; 681 dx=(float)NX/(nx+1); 682 dy=(float)NY/(ny+1); 683 for(ix=1;ix<=nx;ix++) 684 for(iy=1;iy<=ny;iy++) { 685 masque_obs((int)(ix*dx),(int)(iy*dy))=1; 686 comp++; 687 } 688 printf("\n savemode : %d profils observés(dx=%f,dy=%f)\n",comp,dx,dy); 689 } 690 } 691 660 692 661 693 //_____________________________________________________________________________ -
trunk/src/ta_c.h
r70 r75 20 20 //// 21 21 // printf("norm_fac= %24.16e\n",norm_fac); 22 if(fabs(norm_fil*x1)>5)23 22 // if(fabs(norm_fil*x1)>5) 23 //printf("increm(%d,%d,%d) = %24.16e (%24.16e) \n",Yi+1,Yj+1,Yk+1,norm_fil*x1,YS1); 24 24 } 25 25 //===========================================================================
Note: See TracChangeset
for help on using the changeset viewer.