Changeset 5481


Ignore:
Timestamp:
08/23/10 00:32:52 (15 years ago)
Author:
Eric.Larour
Message:

Added node_partition so that AverageOntoPartition can work.
Also changed numresponses to numresponsesdescriptors. numresponses
now comes from the parameters.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk/src/mex/DakotaResponses/DakotaResponses.cpp

    r4617 r5481  
    1616        Materials*  materials=NULL;
    1717        Parameters* parameters=NULL;
     18        Vec         node_partition=NULL;
    1819        double*     responses=NULL;
    1920        char**      responses_descriptors=NULL;
    2021        char*       string=NULL;
    2122        int         numresponses;
     23        int         numresponsedescriptors;
    2224        mxArray*    pfield=NULL;
    2325        int         stringlength;
     
    3638        FetchData((DataSet**)&materials,MATERIALSIN);
    3739        FetchParams(&parameters,PARAMETERSIN);
     40        FetchData(&node_partition,NODEPARTITION);
     41
     42        /*number of responses: */
     43        parameters->FindParam(&numresponses,QmuNumberOfResponsesEnum);
    3844       
    3945        /*dakota input: */
    40         numresponses=mxGetM(RESPONSESDESCRIPTORS);
    41         responses_descriptors=(char**)xmalloc(numresponses*sizeof(char*));
    42         for(i=0;i<numresponses;i++){
     46        numresponsedescriptors=mxGetM(RESPONSESDESCRIPTORS);
     47        responses_descriptors=(char**)xmalloc(numresponsedescriptors*sizeof(char*));
     48        for(i=0;i<numresponsedescriptors;i++){
    4349                pfield=mxGetCell(RESPONSESDESCRIPTORS,i);
    4450                stringlength = (mxGetM(pfield) * mxGetN(pfield) * sizeof(mxChar)) + 1 ;
     
    5763       
    5864        /*!Generate internal degree of freedom numbers: */
    59         DakotaResponsesx(responses,elements,nodes, vertices,loads,materials, parameters,responses_descriptors,numresponses);
     65        DakotaResponsesx(responses,elements,nodes, vertices,loads,materials, parameters, node_partition,responses_descriptors,numresponsedescriptors,numresponses);
    6066
    6167        /*write output datasets: */
     
    7076        delete parameters;
    7177       
    72         for(i=0;i<numresponses;i++){
     78        for(i=0;i<numresponsedescriptors;i++){
    7379                char* string=responses_descriptors[i]; xfree((void**)&string);
    7480        }
     
    8490{
    8591        _printf_("\n");
    86         _printf_("   usage: [responses] = %s(elements,nodes,vertices,loads,materials,parameters,responses_descritpors,numresponses);\n",__FUNCT__);
     92        _printf_("   usage: [responses] = %s(elements,nodes,vertices,loads,materials,parameters,responses_descritpors);\n",__FUNCT__);
    8793        _printf_("\n");
    8894}
Note: See TracChangeset for help on using the changeset viewer.