Changeset 3436


Ignore:
Timestamp:
04/07/10 16:45:45 (15 years ago)
Author:
seroussi
Message:

change CreateParameters with numberofvertices

Location:
issm/trunk/src/c/ModelProcessorx
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness/CreateConstraintsBalancedthickness.cpp

    r3332 r3436  
    1515
    1616        int i;
    17         int count;
     17        int count=0;
    1818       
    1919        DataSet* constraints = NULL;
    2020        Spc*    spc  = NULL;
     21        int     node1,node2;
    2122
    22         /*spc intermediary data: */
    23         int spc_sid;
    24         int spc_node;
    25         int spc_dof;
    26         double spc_value;
    27        
    28         double* spcthickness=NULL;
    29        
    3023        /*Create constraints: */
    3124        constraints = new DataSet(ConstraintsEnum());
    3225
    3326        /*Fetch data: */
    34         IoModelFetchData(&spcthickness,NULL,NULL,iomodel_handle,"spcthickness");
     27        IoModelFetchData(&iomodel->spcthickness,NULL,NULL,iomodel_handle,"spcthickness");
    3528
    36         count=0;
    37 
     29        count=1;
    3830        /*Create spcs from x,y,z, as well as the spc values on those spcs: */
    3931        for (i=0;i<iomodel->numberofnodes;i++){
  • issm/trunk/src/c/ModelProcessorx/Balancedthickness/CreateParametersBalancedthickness.cpp

    r3332 r3436  
    4040        IoModelFetchData(&vz,NULL,NULL,iomodel_handle,"vz");
    4141
    42         u_g=(double*)xcalloc(iomodel->numberofnodes*3,sizeof(double));
     42        u_g=(double*)xcalloc(iomodel->numberofvertices*3,sizeof(double));
    4343
    44         if(vx) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
    45         if(vy) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
    46         if(vz) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
     44        if(vx) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
     45        if(vy) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
     46        if(vz) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
    4747
    4848        count++;
    4949        param= new Param(count,"u_g",DOUBLEVEC);
    50         param->SetDoubleVec(u_g,3*iomodel->numberofnodes,3);
     50        param->SetDoubleVec(u_g,3*iomodel->numberofvertices,3);
    5151        parameters->AddObject(param);
    5252
     
    5959        /*Get melting: */
    6060        IoModelFetchData(&melting,NULL,NULL,iomodel_handle,"melting");
    61         if(melting) for(i=0;i<iomodel->numberofnodes;i++)melting[i]=melting[i]/iomodel->yts;
     61        if(melting) for(i=0;i<iomodel->numberofvertices;i++)melting[i]=melting[i]/iomodel->yts;
    6262       
    6363        count++;
    6464        param= new Param(count,"m_g",DOUBLEVEC);
    65         if(melting) param->SetDoubleVec(melting,iomodel->numberofnodes,1);
     65        if(melting) param->SetDoubleVec(melting,iomodel->numberofvertices,1);
    6666        else param->SetDoubleVec(melting,0,1);
    6767        parameters->AddObject(param);
     
    7272        /*Get accumulation: */
    7373        IoModelFetchData(&accumulation,NULL,NULL,iomodel_handle,"accumulation");
    74         if(accumulation) for(i=0;i<iomodel->numberofnodes;i++)accumulation[i]=accumulation[i]/iomodel->yts;
     74        if(accumulation) for(i=0;i<iomodel->numberofvertices;i++)accumulation[i]=accumulation[i]/iomodel->yts;
    7575       
    7676        count++;
    7777        param= new Param(count,"a_g",DOUBLEVEC);
    78         if(accumulation) param->SetDoubleVec(accumulation,iomodel->numberofnodes,1);
     78        if(accumulation) param->SetDoubleVec(accumulation,iomodel->numberofvertices,1);
    7979        else param->SetDoubleVec(accumulation,0,0);
    8080        parameters->AddObject(param);
  • issm/trunk/src/c/ModelProcessorx/Balancedvelocities/CreateParametersBalancedvelocities.cpp

    r3332 r3436  
    4040        IoModelFetchData(&vz,NULL,NULL,iomodel_handle,"vz");
    4141
    42         u_g=(double*)xcalloc(iomodel->numberofnodes*3,sizeof(double));
     42        u_g=(double*)xcalloc(iomodel->numberofvertices*3,sizeof(double));
    4343
    44         if(vx) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
    45         if(vy) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
    46         if(vz) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
     44        if(vx) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
     45        if(vy) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
     46        if(vz) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
    4747
    4848        count++;
    4949        param= new Param(count,"u_g",DOUBLEVEC);
    50         param->SetDoubleVec(u_g,3*iomodel->numberofnodes,3);
     50        param->SetDoubleVec(u_g,3*iomodel->numberofvertices,3);
    5151        parameters->AddObject(param);
    5252
     
    6262        count++;
    6363        param= new Param(count,"h_g",DOUBLEVEC);
    64         if(thickness) param->SetDoubleVec(thickness,iomodel->numberofnodes,1);
     64        if(thickness) param->SetDoubleVec(thickness,iomodel->numberofvertices,1);
    6565        else param->SetDoubleVec(thickness,0,0);
    6666        parameters->AddObject(param);
     
    7171        /*Get melting: */
    7272        IoModelFetchData(&melting,NULL,NULL,iomodel_handle,"melting");
    73         if(melting) for(i=0;i<iomodel->numberofnodes;i++)melting[i]=melting[i]/iomodel->yts;
     73        if(melting) for(i=0;i<iomodel->numberofvertices;i++)melting[i]=melting[i]/iomodel->yts;
    7474       
    7575        count++;
    7676        param= new Param(count,"m_g",DOUBLEVEC);
    77         if(melting) param->SetDoubleVec(melting,iomodel->numberofnodes,1);
     77        if(melting) param->SetDoubleVec(melting,iomodel->numberofvertices,1);
    7878        else param->SetDoubleVec(melting,0,1);
    7979        parameters->AddObject(param);
     
    8484        /*Get accumulation: */
    8585        IoModelFetchData(&accumulation,NULL,NULL,iomodel_handle,"accumulation");
    86         if(accumulation) for(i=0;i<iomodel->numberofnodes;i++)accumulation[i]=accumulation[i]/iomodel->yts;
     86        if(accumulation) for(i=0;i<iomodel->numberofvertices;i++)accumulation[i]=accumulation[i]/iomodel->yts;
    8787       
    8888        count++;
    8989        param= new Param(count,"a_g",DOUBLEVEC);
    90         if(accumulation) param->SetDoubleVec(accumulation,iomodel->numberofnodes,1);
     90        if(accumulation) param->SetDoubleVec(accumulation,iomodel->numberofvertices,1);
    9191        else param->SetDoubleVec(accumulation,0,0);
    9292        parameters->AddObject(param);
  • issm/trunk/src/c/ModelProcessorx/Control/CreateParametersControl.cpp

    r3332 r3436  
    181181                count++;
    182182                param= new Param(count,"weights",DOUBLEVEC);
    183                 param->SetDoubleVec(iomodel->weights,iomodel->numberofnodes);
     183                param->SetDoubleVec(iomodel->weights,iomodel->numberofvertices);
    184184                parameters->AddObject(param);
    185185
     
    194194                IoModelFetchData(&control_parameter,NULL,NULL,iomodel_handle,iomodel->control_type);
    195195
    196                 u_g_obs=(double*)xcalloc(iomodel->numberofnodes*2,sizeof(double));
    197                 if(vx_obs)for(i=0;i<iomodel->numberofnodes;i++)u_g_obs[2*i+0]=vx_obs[i]/iomodel->yts;
    198                 if(vy_obs)for(i=0;i<iomodel->numberofnodes;i++)u_g_obs[2*i+1]=vy_obs[i]/iomodel->yts;
     196                u_g_obs=(double*)xcalloc(iomodel->numberofvertices*2,sizeof(double));
     197                if(vx_obs)for(i=0;i<iomodel->numberofvertices;i++)u_g_obs[2*i+0]=vx_obs[i]/iomodel->yts;
     198                if(vy_obs)for(i=0;i<iomodel->numberofvertices;i++)u_g_obs[2*i+1]=vy_obs[i]/iomodel->yts;
    199199
    200200                count++;
    201201                param= new Param(count,"u_g_obs",DOUBLEVEC);
    202                 param->SetDoubleVec(u_g_obs,2*iomodel->numberofnodes,2);
     202                param->SetDoubleVec(u_g_obs,2*iomodel->numberofvertices,2);
    203203                parameters->AddObject(param);
    204204               
    205                 param_g=(double*)xcalloc(iomodel->numberofnodes,sizeof(double));
    206                 for(i=0;i<iomodel->numberofnodes;i++)param_g[i]=control_parameter[i];
     205                param_g=(double*)xcalloc(iomodel->numberofvertices,sizeof(double));
     206                for(i=0;i<iomodel->numberofvertices;i++)param_g[i]=control_parameter[i];
    207207
    208208                count++;
    209209                param= new Param(count,"param_g",DOUBLEVEC);
    210                 param->SetDoubleVec(param_g,iomodel->numberofnodes,1);
     210                param->SetDoubleVec(param_g,iomodel->numberofvertices,1);
    211211                parameters->AddObject(param);
    212212
  • issm/trunk/src/c/ModelProcessorx/Melting/CreateParametersMelting.cpp

    r3332 r3436  
    3333                IoModelFetchData(&melting,NULL,NULL,iomodel_handle,"melting");
    3434                if(melting) {
    35                         for(i=0;i<iomodel->numberofnodes;i++)melting[i]=melting[i]/iomodel->yts;   //m/s instead of m/yr
     35                        for(i=0;i<iomodel->numberofvertices;i++)melting[i]=melting[i]/iomodel->yts;   //m/s instead of m/yr
    3636                }
    3737                else{
    38                         for(i=0;i<iomodel->numberofnodes;i++)melting[i]=0;
     38                        for(i=0;i<iomodel->numberofvertices;i++)melting[i]=0;
    3939                }
    4040
    4141                count++;
    4242                param= new Param(count,"m_g",DOUBLEVEC);
    43                 if(melting) param->SetDoubleVec(melting,iomodel->numberofnodes);
     43                if(melting) param->SetDoubleVec(melting,iomodel->numberofvertices);
    4444                else param->SetDoubleVec(melting,0);
    4545                parameters->AddObject(param);
  • issm/trunk/src/c/ModelProcessorx/Prognostic/CreateParametersPrognostic.cpp

    r3332 r3436  
    4141        IoModelFetchData(&vz,NULL,NULL,iomodel_handle,"vz");
    4242
    43         u_g=(double*)xcalloc(iomodel->numberofnodes*3,sizeof(double));
     43        u_g=(double*)xcalloc(iomodel->numberofvertices*3,sizeof(double));
    4444
    45         if(vx) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
    46         if(vy) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
    47         if(vz) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
     45        if(vx) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
     46        if(vy) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
     47        if(vz) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
    4848
    4949        count++;
    5050        param= new Param(count,"u_g",DOUBLEVEC);
    51         param->SetDoubleVec(u_g,3*iomodel->numberofnodes,3);
     51        param->SetDoubleVec(u_g,3*iomodel->numberofvertices,3);
    5252        parameters->AddObject(param);
    5353
     
    6565                count++;
    6666                param= new Param(count,"p_g",DOUBLEVEC);
    67                 if(pressure) param->SetDoubleVec(pressure,iomodel->numberofnodes,1);
     67                if(pressure) param->SetDoubleVec(pressure,iomodel->numberofvertices,1);
    6868                else param->SetDoubleVec(pressure,0,0);
    6969                parameters->AddObject(param);
     
    8080                count++;
    8181                param= new Param(count,"t_g",DOUBLEVEC);
    82                 if(temperature) param->SetDoubleVec(temperature,iomodel->numberofnodes,1);
     82                if(temperature) param->SetDoubleVec(temperature,iomodel->numberofvertices,1);
    8383                else param->SetDoubleVec(temperature,0,0);
    8484                parameters->AddObject(param);
     
    9393        count++;
    9494        param= new Param(count,"h_g",DOUBLEVEC);
    95         if(thickness) param->SetDoubleVec(thickness,iomodel->numberofnodes,1);
     95        if(thickness) param->SetDoubleVec(thickness,iomodel->numberofvertices,1);
    9696        else param->SetDoubleVec(thickness,0,0);
    9797        parameters->AddObject(param);
     
    105105        count++;
    106106        param= new Param(count,"s_g",DOUBLEVEC);
    107         if(surface) param->SetDoubleVec(surface,iomodel->numberofnodes,1);
     107        if(surface) param->SetDoubleVec(surface,iomodel->numberofvertices,1);
    108108        else param->SetDoubleVec(surface,0,0);
    109109        parameters->AddObject(param);
     
    117117        count++;
    118118        param= new Param(count,"b_g",DOUBLEVEC);
    119         if(bed) param->SetDoubleVec(bed,iomodel->numberofnodes,1);
     119        if(bed) param->SetDoubleVec(bed,iomodel->numberofvertices,1);
    120120        else param->SetDoubleVec(bed,0,0);
    121121        parameters->AddObject(param);
     
    126126        /*Get melting: */
    127127        IoModelFetchData(&melting,NULL,NULL,iomodel_handle,"melting");
    128         if(melting) for(i=0;i<iomodel->numberofnodes;i++)melting[i]=melting[i]/iomodel->yts;
     128        if(melting) for(i=0;i<iomodel->numberofvertices;i++)melting[i]=melting[i]/iomodel->yts;
    129129       
    130130        count++;
    131131        param= new Param(count,"m_g",DOUBLEVEC);
    132         if(melting) param->SetDoubleVec(melting,iomodel->numberofnodes,1);
     132        if(melting) param->SetDoubleVec(melting,iomodel->numberofvertices,1);
    133133        else param->SetDoubleVec(melting,0,1);
    134134        parameters->AddObject(param);
     
    139139        /*Get accumulation: */
    140140        IoModelFetchData(&accumulation,NULL,NULL,iomodel_handle,"accumulation");
    141         if(accumulation) for(i=0;i<iomodel->numberofnodes;i++)accumulation[i]=accumulation[i]/iomodel->yts;
     141        if(accumulation) for(i=0;i<iomodel->numberofvertices;i++)accumulation[i]=accumulation[i]/iomodel->yts;
    142142       
    143143        count++;
    144144        param= new Param(count,"a_g",DOUBLEVEC);
    145         if(accumulation) param->SetDoubleVec(accumulation,iomodel->numberofnodes,1);
     145        if(accumulation) param->SetDoubleVec(accumulation,iomodel->numberofvertices,1);
    146146        else param->SetDoubleVec(accumulation,0,0);
    147147        parameters->AddObject(param);
  • issm/trunk/src/c/ModelProcessorx/Qmu/CreateParametersQmu.cpp

    r3332 r3436  
    187187                        }
    188188
    189                         MeshPartitionx(&epart, &part,iomodel->numberofelements,iomodel->numberofnodes,iomodel->elements, iomodel->numberofelements2d,iomodel->numberofnodes2d,iomodel->elements2d,iomodel->numlayers,elements_width, iomodel->meshtype,iomodel->qmu_npart);
    190 
    191                         dpart=(double*)xmalloc(iomodel->numberofnodes*sizeof(double));
    192                         for(i=0;i<iomodel->numberofnodes;i++)dpart[i]=part[i];
     189                        MeshPartitionx(&epart, &part,iomodel->numberofelements,iomodel->numberofvertices,iomodel->elements, iomodel->numberofelements2d,iomodel->numberofvertices2d,iomodel->elements2d,iomodel->numlayers,elements_width, iomodel->meshtype,iomodel->qmu_npart);
     190
     191                        dpart=(double*)xmalloc(iomodel->numberofvertices*sizeof(double));
     192                        for(i=0;i<iomodel->numberofvertices;i++)dpart[i]=part[i];
    193193                }
    194194
    195195                count++;
    196196                param= new Param(count,"qmu_part",DOUBLEVEC);
    197                 param->SetDoubleVec(dpart,iomodel->numberofnodes,1);
     197                param->SetDoubleVec(dpart,iomodel->numberofvertices,1);
    198198                parameters->AddObject(param);
    199199
     
    214214                                count++;
    215215                                param= new Param(count,descriptor,DOUBLEVEC);
    216                                 param->SetDoubleVec(dakota_parameter,iomodel->numberofnodes,1);
     216                                param->SetDoubleVec(dakota_parameter,iomodel->numberofvertices,1);
    217217                                parameters->AddObject(param);
    218218
     
    284284                                IoModelFetchData(&iomodel->fit,NULL,NULL,iomodel_handle,"fit");
    285285
    286                                 u_g_obs=(double*)xcalloc(iomodel->numberofnodes*2,sizeof(double));
    287                                 if(vx_obs)for(i=0;i<iomodel->numberofnodes;i++)u_g_obs[2*i+0]=vx_obs[i]/iomodel->yts;
    288                                 if(vy_obs)for(i=0;i<iomodel->numberofnodes;i++)u_g_obs[2*i+1]=vy_obs[i]/iomodel->yts;
     286                                u_g_obs=(double*)xcalloc(iomodel->numberofvertices*2,sizeof(double));
     287                                if(vx_obs)for(i=0;i<iomodel->numberofvertices;i++)u_g_obs[2*i+0]=vx_obs[i]/iomodel->yts;
     288                                if(vy_obs)for(i=0;i<iomodel->numberofvertices;i++)u_g_obs[2*i+1]=vy_obs[i]/iomodel->yts;
    289289
    290290                                count++;
    291291                                param= new Param(count,"velocity_obs",DOUBLEVEC);
    292                                 param->SetDoubleVec(u_g_obs,2*iomodel->numberofnodes,2);
     292                                param->SetDoubleVec(u_g_obs,2*iomodel->numberofvertices,2);
    293293                                parameters->AddObject(param);
    294294
  • issm/trunk/src/c/ModelProcessorx/Thermal/CreateParametersThermal.cpp

    r3332 r3436  
    4444        IoModelFetchData(&vz,NULL,NULL,iomodel_handle,"vz");
    4545
    46         u_g=(double*)xcalloc(iomodel->numberofnodes*3,sizeof(double));
     46        u_g=(double*)xcalloc(iomodel->numberofvertices*3,sizeof(double));
    4747
    48         if(vx) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
    49         if(vy) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
    50         if(vz) for(i=0;i<iomodel->numberofnodes;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
     48        if(vx) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+0]=vx[i]/iomodel->yts;
     49        if(vy) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+1]=vy[i]/iomodel->yts;
     50        if(vz) for(i=0;i<iomodel->numberofvertices;i++)u_g[3*i+2]=vz[i]/iomodel->yts;
    5151
    5252        count++;
    5353        param= new Param(count,"u_g",DOUBLEVEC);
    54         param->SetDoubleVec(u_g,3*iomodel->numberofnodes,3);
     54        param->SetDoubleVec(u_g,3*iomodel->numberofvertices,3);
    5555        parameters->AddObject(param);
    5656
     
    6565        count++;
    6666        param= new Param(count,"p_g",DOUBLEVEC);
    67         if(pressure) param->SetDoubleVec(pressure,iomodel->numberofnodes,1);
     67        if(pressure) param->SetDoubleVec(pressure,iomodel->numberofvertices,1);
    6868        else param->SetDoubleVec(pressure,0,0);
    6969        parameters->AddObject(param);
     
    8080                count++;
    8181                param= new Param(count,"t_g",DOUBLEVEC);
    82                 if(temperature) param->SetDoubleVec(temperature,iomodel->numberofnodes,1);
     82                if(temperature) param->SetDoubleVec(temperature,iomodel->numberofvertices,1);
    8383                else ISSMERROR(exprintf("Missing initial temperature"));
    8484                parameters->AddObject(param);
Note: See TracChangeset for help on using the changeset viewer.