Changeset 16314


Ignore:
Timestamp:
10/07/13 15:52:03 (12 years ago)
Author:
Mathieu Morlighem
Message:

CHG: removing all references to weight_index

Location:
issm/trunk-jpl/src/c
Files:
29 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/DependentObject.cpp

    r15130 r16314  
    9494        }
    9595
    96         femmodel->Responsex(poutput_value,this->name,0);
     96        femmodel->Responsex(poutput_value,this->name);
    9797
    9898}
  • issm/trunk-jpl/src/c/classes/Elements/Element.h

    r16275 r16314  
    106106                #ifdef _HAVE_CONTROL_
    107107                virtual void   Gradj(Vector<IssmDouble>* gradient,int control_type,int control_index)=0;
    108                 virtual IssmDouble ThicknessAbsMisfit(int weight_index)=0;
    109                 virtual IssmDouble SurfaceAbsVelMisfit(int weight_index)=0;
    110                 virtual IssmDouble SurfaceRelVelMisfit(int weight_index)=0;
    111                 virtual IssmDouble SurfaceLogVelMisfit(int weight_index)=0;
    112                 virtual IssmDouble SurfaceLogVxVyMisfit(int weight_index)=0;
    113                 virtual IssmDouble SurfaceAverageVelMisfit(int weight_index)=0;
    114                 virtual IssmDouble ThicknessAbsGradient(int weight_index)=0;
    115                 virtual IssmDouble ThicknessAlongGradient(int weight_index)=0;
    116                 virtual IssmDouble ThicknessAcrossGradient(int weight_index)=0;
    117                 virtual IssmDouble BalancethicknessMisfit(int weight_index)=0;
    118                 virtual IssmDouble RheologyBbarAbsGradient(int weight_index)=0;
    119                 virtual IssmDouble DragCoefficientAbsGradient(int weight_index)=0;
     108                virtual IssmDouble ThicknessAbsMisfit(void)=0;
     109                virtual IssmDouble SurfaceAbsVelMisfit(void)=0;
     110                virtual IssmDouble SurfaceRelVelMisfit(void)=0;
     111                virtual IssmDouble SurfaceLogVelMisfit(void)=0;
     112                virtual IssmDouble SurfaceLogVxVyMisfit(void)=0;
     113                virtual IssmDouble SurfaceAverageVelMisfit(void)=0;
     114                virtual IssmDouble ThicknessAbsGradient(void)=0;
     115                virtual IssmDouble ThicknessAlongGradient(void)=0;
     116                virtual IssmDouble ThicknessAcrossGradient(void)=0;
     117                virtual IssmDouble BalancethicknessMisfit(void)=0;
     118                virtual IssmDouble RheologyBbarAbsGradient(void)=0;
     119                virtual IssmDouble DragCoefficientAbsGradient(void)=0;
    120120                virtual void   ControlInputGetGradient(Vector<IssmDouble>* gradient,int enum_type,int control_index)=0;
    121121                virtual void   ControlInputSetGradient(IssmDouble* gradient,int enum_type,int control_index)=0;
  • issm/trunk-jpl/src/c/classes/Elements/Penta.cpp

    r16313 r16314  
    60226022                        if(IsOnBed()){
    60236023                                tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1.
    6024                                 tria->GradjDragGradient(gradient,resp,control_index);
     6024                                tria->GradjDragGradient(gradient,control_index);
    60256025                                delete tria->material; delete tria;
    60266026                        }
     
    60296029                        if(IsOnBed()){
    60306030                                tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1.
    6031                                 tria->GradjBGradient(gradient,resp,control_index);
     6031                                tria->GradjBGradient(gradient,control_index);
    60326032                                delete tria->material; delete tria;
    60336033                        }
     
    64176417/*}}}*/
    64186418/*FUNCTION Penta::SurfaceAverageVelMisfit {{{*/
    6419 IssmDouble Penta::SurfaceAverageVelMisfit(int weight_index){
     6419IssmDouble Penta::SurfaceAverageVelMisfit(void){
    64206420
    64216421        int    approximation;
     
    64406440                 * and compute SurfaceAverageVelMisfit*/
    64416441                tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1.
    6442                 J=tria->SurfaceAverageVelMisfit(weight_index);
     6442                J=tria->SurfaceAverageVelMisfit();
    64436443                delete tria->material; delete tria;
    64446444                return J;
     
    64476447
    64486448                tria=(Tria*)SpawnTria(1); //lower face is 0, upper face is 1.
    6449                 J=tria->SurfaceAverageVelMisfit(weight_index);
     6449                J=tria->SurfaceAverageVelMisfit();
    64506450                delete tria->material; delete tria;
    64516451                return J;
     
    64546454/*}}}*/
    64556455/*FUNCTION Penta::SurfaceAbsVelMisfit {{{*/
    6456 IssmDouble Penta::SurfaceAbsVelMisfit(int weight_index){
     6456IssmDouble Penta::SurfaceAbsVelMisfit(void){
    64576457
    64586458        int    approximation;
     
    64776477                 * and compute SurfaceAbsVelMisfit*/
    64786478                tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1.
    6479                 J=tria->SurfaceAbsVelMisfit(weight_index);
     6479                J=tria->SurfaceAbsVelMisfit();
    64806480                delete tria->material; delete tria;
    64816481                return J;
     
    64846484
    64856485                tria=(Tria*)SpawnTria(1); //lower face is 0, upper face is 1.
    6486                 J=tria->SurfaceAbsVelMisfit(weight_index);
     6486                J=tria->SurfaceAbsVelMisfit();
    64876487                delete tria->material; delete tria;
    64886488                return J;
     
    64916491/*}}}*/
    64926492/*FUNCTION Penta::SurfaceLogVelMisfit {{{*/
    6493 IssmDouble Penta::SurfaceLogVelMisfit(int weight_index){
     6493IssmDouble Penta::SurfaceLogVelMisfit(void){
    64946494
    64956495        int    approximation;
     
    65146514                 * and compute SurfaceLogVelMisfit*/
    65156515                tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1.
    6516                 J=tria->SurfaceLogVelMisfit(weight_index);
     6516                J=tria->SurfaceLogVelMisfit();
    65176517                delete tria->material; delete tria;
    65186518                return J;
     
    65216521
    65226522                tria=(Tria*)SpawnTria(1); //lower face is 0, upper face is 1.
    6523                 J=tria->SurfaceLogVelMisfit(weight_index);
     6523                J=tria->SurfaceLogVelMisfit();
    65246524                delete tria->material; delete tria;
    65256525                return J;
     
    65286528/*}}}*/
    65296529/*FUNCTION Penta::SurfaceLogVxVyMisfit {{{*/
    6530 IssmDouble Penta::SurfaceLogVxVyMisfit(int weight_index){
     6530IssmDouble Penta::SurfaceLogVxVyMisfit(void){
    65316531
    65326532        IssmDouble J;
     
    65536553                 * and compute SurfaceLogVxVyMisfit*/
    65546554                tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1.
    6555                 J=tria->SurfaceLogVxVyMisfit(weight_index);
     6555                J=tria->SurfaceLogVxVyMisfit();
    65566556                delete tria->material; delete tria;
    65576557                return J;
     
    65606560
    65616561                tria=(Tria*)SpawnTria(1); //lower face is 0, upper face is 1.
    6562                 J=tria->SurfaceLogVxVyMisfit(weight_index);
     6562                J=tria->SurfaceLogVxVyMisfit();
    65636563                delete tria->material; delete tria;
    65646564                return J;
     
    65676567/*}}}*/
    65686568/*FUNCTION Penta::SurfaceRelVelMisfit {{{*/
    6569 IssmDouble Penta::SurfaceRelVelMisfit(int weight_index){
     6569IssmDouble Penta::SurfaceRelVelMisfit(void){
    65706570
    65716571        int    approximation;
     
    65906590                 * and compute SurfaceRelVelMisfit*/
    65916591                tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1.
    6592                 J=tria->SurfaceRelVelMisfit(weight_index);
     6592                J=tria->SurfaceRelVelMisfit();
    65936593                delete tria->material; delete tria;
    65946594                return J;
     
    65976597
    65986598                tria=(Tria*)SpawnTria(1); //lower face is 0, upper face is 1.
    6599                 J=tria->SurfaceRelVelMisfit(weight_index);
     6599                J=tria->SurfaceRelVelMisfit();
    66006600                delete tria->material; delete tria;
    66016601                return J;
     
    66046604/*}}}*/
    66056605/*FUNCTION Penta::ThicknessAbsGradient{{{*/
    6606 IssmDouble Penta::ThicknessAbsGradient(int weight_index){
     6606IssmDouble Penta::ThicknessAbsGradient(void){
    66076607
    66086608        _error_("Not implemented yet");
     
    66106610/*}}}*/
    66116611/*FUNCTION Penta::ThicknessAbsMisfit {{{*/
    6612 IssmDouble Penta::ThicknessAbsMisfit(int weight_index){
     6612IssmDouble Penta::ThicknessAbsMisfit(void){
    66136613
    66146614        int    approximation;
     
    66246624
    66256625        tria=(Tria*)SpawnTria(0);
    6626         J=tria->ThicknessAbsMisfit(weight_index);
     6626        J=tria->ThicknessAbsMisfit();
    66276627        delete tria->material; delete tria;
    66286628        return J;
     
    66306630/*}}}*/
    66316631/*FUNCTION Penta::DragCoefficientAbsGradient{{{*/
    6632 IssmDouble Penta::DragCoefficientAbsGradient(int weight_index){
     6632IssmDouble Penta::DragCoefficientAbsGradient(void){
    66336633
    66346634        IssmDouble J;
     
    66396639
    66406640        tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1
    6641         J=tria->DragCoefficientAbsGradient(weight_index);
     6641        J=tria->DragCoefficientAbsGradient();
    66426642        delete tria->material; delete tria;
    66436643        return J;
     
    66456645/*}}}*/
    66466646/*FUNCTION Penta::RheologyBbarAbsGradient{{{*/
    6647 IssmDouble Penta::RheologyBbarAbsGradient(int weight_index){
     6647IssmDouble Penta::RheologyBbarAbsGradient(void){
    66486648
    66496649        IssmDouble J;
     
    66546654
    66556655        tria=(Tria*)SpawnTria(0); //lower face is 0, upper face is 1
    6656         J=tria->RheologyBbarAbsGradient(weight_index);
     6656        J=tria->RheologyBbarAbsGradient();
    66576657        delete tria->material; delete tria;
    66586658        return J;
  • issm/trunk-jpl/src/c/classes/Elements/Penta.h

    r16275 r16314  
    137137
    138138                #ifdef _HAVE_CONTROL_
    139                 IssmDouble DragCoefficientAbsGradient(int weight_index);
     139                IssmDouble DragCoefficientAbsGradient(void);
    140140                void   GradientIndexing(int* indexing,int control_index);
    141141                void   Gradj(Vector<IssmDouble>* gradient,int control_type,int control_index);
     
    151151                void   ControlInputScaleGradient(int enum_type,IssmDouble scale);
    152152                void   ControlInputSetGradient(IssmDouble* gradient,int enum_type,int control_index);
    153                 IssmDouble RheologyBbarAbsGradient(int weight_index);
    154                 IssmDouble ThicknessAbsMisfit(     int weight_index);
    155                 IssmDouble SurfaceAbsVelMisfit(    int weight_index);
    156                 IssmDouble SurfaceRelVelMisfit(    int weight_index);
    157                 IssmDouble SurfaceLogVelMisfit(    int weight_index);
    158                 IssmDouble SurfaceLogVxVyMisfit(   int weight_index);
    159                 IssmDouble SurfaceAverageVelMisfit(int weight_index);
    160                 IssmDouble ThicknessAbsGradient(int weight_index);
    161                 IssmDouble ThicknessAlongGradient( int weight_index){_error_("not supported");};
    162                 IssmDouble ThicknessAcrossGradient(int weight_index){_error_("not supported");};
    163                 IssmDouble BalancethicknessMisfit(int weight_index){_error_("not supported");};
     153                IssmDouble RheologyBbarAbsGradient(void);
     154                IssmDouble ThicknessAbsMisfit(void);
     155                IssmDouble SurfaceAbsVelMisfit(void);
     156                IssmDouble SurfaceRelVelMisfit(void);
     157                IssmDouble SurfaceLogVelMisfit(void);
     158                IssmDouble SurfaceLogVxVyMisfit(void);
     159                IssmDouble SurfaceAverageVelMisfit(void);
     160                IssmDouble ThicknessAbsGradient(void);
     161                IssmDouble ThicknessAlongGradient(void){_error_("not supported");};
     162                IssmDouble ThicknessAcrossGradient(void){_error_("not supported");};
     163                IssmDouble BalancethicknessMisfit(void){_error_("not supported");};
    164164                void   InputControlUpdate(IssmDouble scalar,bool save_parameter);
    165165                #endif
  • issm/trunk-jpl/src/c/classes/Elements/Tria.cpp

    r16313 r16314  
    36133613#ifdef _HAVE_CONTROL_
    36143614/*FUNCTION Tria::BalancethicknessMisfit{{{*/
    3615 IssmDouble Tria::BalancethicknessMisfit(int weight_index){
     3615IssmDouble Tria::BalancethicknessMisfit(void){
    36163616
    36173617        /* Intermediaries */
     
    38203820                        break;
    38213821                case DragCoefficientAbsGradientEnum:
    3822                         GradjDragGradient(gradient,resp,control_index);
     3822                        GradjDragGradient(gradient,control_index);
    38233823                        break;
    38243824                case RheologyBbarAbsGradientEnum:
    3825                         GradjBGradient(gradient,resp,control_index);
     3825                        GradjBGradient(gradient,control_index);
    38263826                        break;
    38273827                default:
     
    38333833/*}}}*/
    38343834/*FUNCTION Tria::GradjBGradient{{{*/
    3835 void  Tria::GradjBGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index){
     3835void  Tria::GradjBGradient(Vector<IssmDouble>* gradient,int control_index){
    38363836
    38373837        int        i;
     
    40734073/*}}}*/
    40744074/*FUNCTION Tria::GradjDragGradient{{{*/
    4075 void  Tria::GradjDragGradient(Vector<IssmDouble>* gradient, int weight_index,int control_index){
     4075void  Tria::GradjDragGradient(Vector<IssmDouble>* gradient,int control_index){
    40764076
    40774077        int        i;
     
    43414341/*}}}*/
    43424342/*FUNCTION Tria::RheologyBbarAbsGradient{{{*/
    4343 IssmDouble Tria::RheologyBbarAbsGradient(int weight_index){
     4343IssmDouble Tria::RheologyBbarAbsGradient(void){
    43444344
    43454345        /* Intermediaries */
     
    43844384/*}}}*/
    43854385/*FUNCTION Tria::SurfaceAverageVelMisfit {{{*/
    4386 IssmDouble Tria::SurfaceAverageVelMisfit(int weight_index){
     4386IssmDouble Tria::SurfaceAverageVelMisfit(void){
    43874387
    43884388        IssmDouble Jelem=0,S,Jdet;
     
    44404440/*}}}*/
    44414441/*FUNCTION Tria::SurfaceLogVelMisfit {{{*/
    4442 IssmDouble Tria::SurfaceLogVelMisfit(int weight_index){
     4442IssmDouble Tria::SurfaceLogVelMisfit(void){
    44434443
    44444444        IssmDouble Jelem=0.;
     
    45004500/*}}}*/
    45014501/*FUNCTION Tria::SurfaceLogVxVyMisfit {{{*/
    4502 IssmDouble Tria::SurfaceLogVxVyMisfit(int weight_index){
     4502IssmDouble Tria::SurfaceLogVxVyMisfit(void){
    45034503
    45044504        IssmDouble Jelem=0, S=0;
     
    45604560/*}}}*/
    45614561/*FUNCTION Tria::SurfaceAbsVelMisfit {{{*/
    4562 IssmDouble Tria::SurfaceAbsVelMisfit(int weight_index){
     4562IssmDouble Tria::SurfaceAbsVelMisfit(void){
    45634563
    45644564        IssmDouble Jelem=0;
     
    46164616/*}}}*/
    46174617/*FUNCTION Tria::SurfaceRelVelMisfit {{{*/
    4618 IssmDouble Tria::SurfaceRelVelMisfit(int weight_index){
     4618IssmDouble Tria::SurfaceRelVelMisfit(void){
    46194619
    46204620        IssmDouble  Jelem=0;
     
    46774677/*}}}*/
    46784678/*FUNCTION Tria::ThicknessAbsGradient{{{*/
    4679 IssmDouble Tria::ThicknessAbsGradient(int weight_index){
     4679IssmDouble Tria::ThicknessAbsGradient(void){
    46804680
    46814681        /* Intermediaries */
     
    47204720/*}}}*/
    47214721/*FUNCTION Tria::ThicknessAlongGradient{{{*/
    4722 IssmDouble Tria::ThicknessAlongGradient(int weight_index){
     4722IssmDouble Tria::ThicknessAlongGradient(void){
    47234723
    47244724        /* Intermediaries */
     
    47714771/*}}}*/
    47724772/*FUNCTION Tria::ThicknessAcrossGradient{{{*/
    4773 IssmDouble Tria::ThicknessAcrossGradient(int weight_index){
     4773IssmDouble Tria::ThicknessAcrossGradient(void){
    47744774
    47754775        /* Intermediaries */
     
    48224822/*}}}*/
    48234823/*FUNCTION Tria::ThicknessAbsMisfit {{{*/
    4824 IssmDouble Tria::ThicknessAbsMisfit(int weight_index){
     4824IssmDouble Tria::ThicknessAbsMisfit(void){
    48254825
    48264826        /*Intermediaries*/
     
    51395139/*}}}*/
    51405140/*FUNCTION Tria::DragCoefficientAbsGradient{{{*/
    5141 IssmDouble Tria::DragCoefficientAbsGradient(int weight_index){
     5141IssmDouble Tria::DragCoefficientAbsGradient(void){
    51425142
    51435143        /* Intermediaries */
  • issm/trunk-jpl/src/c/classes/Elements/Tria.h

    r16275 r16314  
    134134
    135135                #ifdef _HAVE_CONTROL_
    136                 IssmDouble DragCoefficientAbsGradient(int weight_index);
     136                IssmDouble DragCoefficientAbsGradient(void);
    137137                void       GradientIndexing(int* indexing,int control_index);
    138138                void       Gradj(Vector<IssmDouble>* gradient,int control_type,int control_index);
    139                 void       GradjBGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index);
    140                 void       GradjDGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index);
     139                void       GradjBGradient(Vector<IssmDouble>* gradient,int control_index);
     140                void       GradjDGradient(Vector<IssmDouble>* gradient,int control_index);
    141141                void       GradjBSSA(Vector<IssmDouble>* gradient,int control_index);
    142142                void       GradjDSSA(Vector<IssmDouble>* gradient,int control_index);
    143143                void       GradjDragSSA(Vector<IssmDouble>* gradient,int control_index);
    144144                void       GradjDragFS(Vector<IssmDouble>* gradient,int control_index);
    145                 void       GradjDragGradient(Vector<IssmDouble>* gradient,int weight_index,int control_index);
     145                void       GradjDragGradient(Vector<IssmDouble>* gradient,int control_index);
    146146                void       GradjDhDtBalancedthickness(Vector<IssmDouble>* gradient,int control_index);
    147147                void       GradjVxBalancedthickness(Vector<IssmDouble>* gradient,int control_index);
     
    153153                void       ControlInputScaleGradient(int enum_type,IssmDouble scale);
    154154                void       ControlInputSetGradient(IssmDouble* gradient,int enum_type,int control_index);
    155                 IssmDouble RheologyBbarAbsGradient(int weight_index);
    156                 IssmDouble ThicknessAbsMisfit(     int weight_index);
    157                 IssmDouble SurfaceAbsVelMisfit(    int weight_index);
    158                 IssmDouble ThicknessAbsGradient(   int weight_index);
    159                 IssmDouble ThicknessAlongGradient( int weight_index);
    160                 IssmDouble ThicknessAcrossGradient(int weight_index);
    161                 IssmDouble BalancethicknessMisfit(     int weight_index);
    162                 IssmDouble SurfaceRelVelMisfit(    int weight_index);
    163                 IssmDouble SurfaceLogVelMisfit(    int weight_index);
    164                 IssmDouble SurfaceLogVxVyMisfit(   int weight_index);
    165                 IssmDouble SurfaceAverageVelMisfit(int weight_index);
     155                IssmDouble RheologyBbarAbsGradient(void);
     156                IssmDouble ThicknessAbsMisfit(void);
     157                IssmDouble SurfaceAbsVelMisfit(void);
     158                IssmDouble ThicknessAbsGradient(void);
     159                IssmDouble ThicknessAlongGradient(void);
     160                IssmDouble ThicknessAcrossGradient(void);
     161                IssmDouble BalancethicknessMisfit(void);
     162                IssmDouble SurfaceRelVelMisfit(void);
     163                IssmDouble SurfaceLogVelMisfit(void);
     164                IssmDouble SurfaceLogVxVyMisfit(void);
     165                IssmDouble SurfaceAverageVelMisfit(void);
    166166                void       InputControlUpdate(IssmDouble scalar,bool save_parameter);
    167167                #endif
  • issm/trunk-jpl/src/c/classes/FemModel.cpp

    r16307 r16314  
    418418}
    419419/*}}}*/
    420 void FemModel::Responsex(IssmDouble* responses,const char* response_descriptor,int weight_index){/*{{{*/
     420void FemModel::Responsex(IssmDouble* responses,const char* response_descriptor){/*{{{*/
    421421
    422422        int response_descriptor_enum=StringToEnumx(response_descriptor);
    423         this->Responsex(responses, response_descriptor_enum,weight_index);
    424 
    425 }
    426 /*}}}*/
    427 void FemModel::Responsex(IssmDouble* responses,int response_descriptor_enum,int weight_index){/*{{{*/
     423        this->Responsex(responses, response_descriptor_enum);
     424
     425}
     426/*}}}*/
     427void FemModel::Responsex(IssmDouble* responses,int response_descriptor_enum){/*{{{*/
    428428
    429429        switch (response_descriptor_enum){
     
    445445                case MassFluxEnum:                 this->MassFluxx(         responses); break;
    446446                #ifdef _HAVE_CONTROL_
    447                 case SurfaceAbsVelMisfitEnum:      SurfaceAbsVelMisfitx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    448                 case SurfaceRelVelMisfitEnum:      SurfaceRelVelMisfitx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    449                 case SurfaceLogVelMisfitEnum:      SurfaceLogVelMisfitx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    450                 case SurfaceLogVxVyMisfitEnum:     SurfaceLogVxVyMisfitx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    451                 case SurfaceAverageVelMisfitEnum:  SurfaceAverageVelMisfitx(responses,this,weight_index); break;
    452                 case ThicknessAbsMisfitEnum:       ThicknessAbsMisfitx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    453                 case ThicknessAbsGradientEnum:     this->ThicknessAbsGradientx(responses,weight_index); break;
    454                 case ThicknessAlongGradientEnum:   ThicknessAlongGradientx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    455                 case ThicknessAcrossGradientEnum:  ThicknessAcrossGradientx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    456                 case RheologyBbarAbsGradientEnum:  RheologyBbarAbsGradientx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    457                 case DragCoefficientAbsGradientEnum:DragCoefficientAbsGradientx(responses, elements,nodes, vertices, loads, materials, parameters,weight_index); break;
    458                 case BalancethicknessMisfitEnum:   BalancethicknessMisfitx(responses,weight_index); break;
     447                case SurfaceAbsVelMisfitEnum:      SurfaceAbsVelMisfitx(responses, elements,nodes, vertices, loads, materials,parameters); break;
     448                case SurfaceRelVelMisfitEnum:      SurfaceRelVelMisfitx(responses, elements,nodes, vertices, loads, materials,parameters); break;
     449                case SurfaceLogVelMisfitEnum:      SurfaceLogVelMisfitx(responses, elements,nodes, vertices, loads, materials,parameters); break;
     450                case SurfaceLogVxVyMisfitEnum:     SurfaceLogVxVyMisfitx(responses, elements,nodes, vertices, loads, materials,parameters); break;
     451                case SurfaceAverageVelMisfitEnum:  SurfaceAverageVelMisfitx(responses,this); break;
     452                case ThicknessAbsMisfitEnum:       ThicknessAbsMisfitx(responses, elements,nodes, vertices, loads, materials, parameters); break;
     453                case ThicknessAbsGradientEnum:     this->ThicknessAbsGradientx(responses); break;
     454                case ThicknessAlongGradientEnum:   ThicknessAlongGradientx(responses, elements,nodes, vertices, loads, materials, parameters); break;
     455                case ThicknessAcrossGradientEnum:  ThicknessAcrossGradientx(responses, elements,nodes, vertices, loads, materials, parameters); break;
     456                case RheologyBbarAbsGradientEnum:  RheologyBbarAbsGradientx(responses, elements,nodes, vertices, loads, materials, parameters); break;
     457                case DragCoefficientAbsGradientEnum:DragCoefficientAbsGradientx(responses, elements,nodes, vertices, loads, materials, parameters); break;
     458                case BalancethicknessMisfitEnum:   BalancethicknessMisfitx(responses); break;
    459459                #endif
    460460                case TotalSmbEnum:                                        this->TotalSmbx(responses); break;
     
    490490
    491491                                case IceVolumeEnum:
    492                                         Responsex(&output_value,"IceVolume",0);
     492                                        Responsex(&output_value,"IceVolume");
    493493                                        results->AddObject(new GenericExternalResult<double>(results->Size()+1,IceVolumeEnum,reCast<IssmPDouble>(output_value),step,time));
    494494                                        break;
    495495                                case IceVolumeAboveFloatationEnum:
    496                                         Responsex(&output_value,"IceVolumeAboveFloatation",0);
     496                                        Responsex(&output_value,"IceVolumeAboveFloatation");
    497497                                        results->AddObject(new GenericExternalResult<double>(results->Size()+1,IceVolumeAboveFloatationEnum,reCast<IssmPDouble>(output_value),step,time));
    498498                                        break;
    499499                                case TotalSmbEnum:
    500                                         Responsex(&output_value,"TotalSmb",0);
     500                                        Responsex(&output_value,"TotalSmb");
    501501                                        results->AddObject(new GenericExternalResult<double>(results->Size()+1,TotalSmbEnum,reCast<IssmPDouble>(output_value),step,time));
    502502                                        break;
    503503                                case MaxVelEnum:
    504                                         Responsex(&output_value,"MaxVel",0);
     504                                        Responsex(&output_value,"MaxVel");
    505505                                        results->AddObject(new GenericExternalResult<double>(results->Size()+1,MaxVelEnum,reCast<IssmPDouble>(output_value),step,time));
    506506                                        break;
     
    997997#endif
    998998#ifdef _HAVE_CONTROL_
    999 void FemModel::BalancethicknessMisfitx(IssmDouble* presponse,int weight_index){/*{{{*/
     999void FemModel::BalancethicknessMisfitx(IssmDouble* presponse){/*{{{*/
    10001000
    10011001        IssmDouble J = 0;
     
    10041004        for(int i=0;i<this->elements->Size();i++){
    10051005                Element* element=dynamic_cast<Element*>(this->elements->GetObjectByOffset(i));
    1006                 J+=element->BalancethicknessMisfit(weight_index);
     1006                J+=element->BalancethicknessMisfit();
    10071007        }
    10081008        ISSM_MPI_Reduce (&J,&J_sum,1,ISSM_MPI_DOUBLE,ISSM_MPI_SUM,0,IssmComm::GetComm() );
     
    10141014
    10151015}/*}}}*/
    1016 void FemModel::ThicknessAbsGradientx( IssmDouble* pJ, int weight_index){/*{{{*/
     1016void FemModel::ThicknessAbsGradientx( IssmDouble* pJ){/*{{{*/
    10171017
    10181018        /*Intermediary*/
     
    10271027        for (i=0;i<elements->Size();i++){
    10281028                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    1029                 J+=element->ThicknessAbsGradient(weight_index);
     1029                J+=element->ThicknessAbsGradient();
    10301030        }
    10311031
     
    10561056        //_printf_(true,"list of misfits: ");
    10571057        for(int i=0;i<num_responses;i++){
    1058                 this->Responsex(&Jplus,EnumToStringx(responses[i]),i);
     1058                this->Responsex(&Jplus,EnumToStringx(responses[i]));
    10591059                //_printf_(true," %12.7g ",Jplus);
    10601060                J+=Jplus;
     
    11251125                        parameters->SetParam(index,IndexEnum);
    11261126
    1127                         this->Responsex(&femmodel_response,root,0);//0 is the index for weights
     1127                        this->Responsex(&femmodel_response,root);
    11281128
    11291129                        if(my_rank==0){
     
    11441144
    11451145                        /*perfectly normal response function: */
    1146                         this->Responsex(&femmodel_response,root,0);//0 is the weight index
     1146                        this->Responsex(&femmodel_response,root);
    11471147
    11481148                        if(my_rank==0){
  • issm/trunk-jpl/src/c/classes/FemModel.h

    r16275 r16314  
    7777                void IceVolumeAboveFloatationx(IssmDouble* pV);
    7878                void ElementResponsex(IssmDouble* presponse,int response_enum);
    79                 void BalancethicknessMisfitx(IssmDouble* pV,int weight_index);
     79                void BalancethicknessMisfitx(IssmDouble* pV);
    8080                #endif
    8181                #ifdef  _HAVE_DAKOTA_
     
    8484                void RequestedOutputsx(int* requested_outputs, int numoutputs);
    8585                void RequestedDependentsx(void);
    86                 void Responsex(IssmDouble* presponse,int response_descriptor_enum,int weight_index);
    87                 void Responsex(IssmDouble* presponse,const char* response_descriptor,int weight_index);
     86                void Responsex(IssmDouble* presponse,int response_descriptor_enum);
     87                void Responsex(IssmDouble* presponse,const char* response_descriptor);
    8888                #ifdef _HAVE_CONTROL_
    8989                void CostFunctionx( IssmDouble* pJ);
    90                 void ThicknessAbsGradientx( IssmDouble* pJ,int weight_index);
     90                void ThicknessAbsGradientx( IssmDouble* pJ);
    9191                #endif
    9292                #ifdef _HAVE_GIA_
  • issm/trunk-jpl/src/c/classes/Inputs/DatasetInput.cpp

    r16313 r16314  
    147147        /*Get requested input within dataset*/
    148148        for(int i=0;i<this->numids;i++) if(this->ids[i]==id) offset=i;
    149         if(offset<0){
    150                 this->Echo();
    151                 _error_("Could not find input of id "<<id);
    152         }
     149        if(offset<0) _error_("Could not find input of id "<<id);
    153150
    154151        Input* input=dynamic_cast<Input*>(this->inputs->GetObjectByOffset(offset));
     
    156153}
    157154/*}}}*/
    158 /*FUNCTION DatasetInput::GetInputValue(IssmDouble* pvalue,GaussPenta* gauss,int index){{{*/
    159 void DatasetInput::GetInputValue(IssmDouble* pvalue,GaussPenta* gauss,int index){
     155/*FUNCTION DatasetInput::GetInputValue(IssmDouble* pvalue,GaussPenta* gauss,int id){{{*/
     156void DatasetInput::GetInputValue(IssmDouble* pvalue,GaussPenta* gauss,int id){
    160157
     158        int  offset = -1;
    161159        _assert_(this->numids == this->inputs->Size());
    162160
    163161        /*Get requested input within dataset*/
    164         if(index<0 || index > inputs->Size()-1) _error_("index requested (" << index << ") exceeds dataset size (" << inputs->Size() << ")");
    165         Input* input=dynamic_cast<Input*>(this->inputs->GetObjectByOffset(index));
     162        for(int i=0;i<this->numids;i++) if(this->ids[i]==id) offset=i;
     163        if(offset<0) _error_("Could not find input of id "<<id);
    166164
     165        Input* input=dynamic_cast<Input*>(this->inputs->GetObjectByOffset(offset));
    167166        input->GetInputValue(pvalue,gauss);
    168167}
  • issm/trunk-jpl/src/c/modules/DragCoefficientAbsGradientx/DragCoefficientAbsGradientx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void DragCoefficientAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters,int weight_index){
     10void DragCoefficientAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->DragCoefficientAbsGradient(weight_index);
     23                J+=element->DragCoefficientAbsGradient();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/DragCoefficientAbsGradientx/DragCoefficientAbsGradientx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void DragCoefficientAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void DragCoefficientAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/RheologyBbarAbsGradientx/RheologyBbarAbsGradientx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void RheologyBbarAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters, int weight_index){
     10void RheologyBbarAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->RheologyBbarAbsGradient(weight_index);
     23                J+=element->RheologyBbarAbsGradient();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/RheologyBbarAbsGradientx/RheologyBbarAbsGradientx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void RheologyBbarAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void RheologyBbarAbsGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/SurfaceAbsVelMisfitx/SurfaceAbsVelMisfitx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void SurfaceAbsVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters,int weight_index){
     10void SurfaceAbsVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->SurfaceAbsVelMisfit(weight_index);
     23                J+=element->SurfaceAbsVelMisfit();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/SurfaceAbsVelMisfitx/SurfaceAbsVelMisfitx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void SurfaceAbsVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void SurfaceAbsVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/SurfaceAverageVelMisfitx/SurfaceAverageVelMisfitx.cpp

    r15849 r16314  
    99#include "../SurfaceAreax/SurfaceAreax.h"
    1010
    11 void SurfaceAverageVelMisfitx(IssmDouble* pJ,FemModel* femmodel,int weight_index){
     11void SurfaceAverageVelMisfitx(IssmDouble* pJ,FemModel* femmodel){
    1212
    1313        /*Intermediary*/
     
    2424        for(int i=0;i<femmodel->elements->Size();i++){
    2525                element=dynamic_cast<Element*>(femmodel->elements->GetObjectByOffset(i));
    26                 J+=element->SurfaceAverageVelMisfit(weight_index);
     26                J+=element->SurfaceAverageVelMisfit();
    2727        }
    2828
  • issm/trunk-jpl/src/c/modules/SurfaceAverageVelMisfitx/SurfaceAverageVelMisfitx.h

    r15849 r16314  
    99
    1010/* local prototypes: */
    11 void SurfaceAverageVelMisfitx(IssmDouble* pJ,FemModel* femmodel,int weight_index);
     11void SurfaceAverageVelMisfitx(IssmDouble* pJ,FemModel* femmodel);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/SurfaceLogVelMisfitx/SurfaceLogVelMisfitx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void SurfaceLogVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters,int weight_index){
     10void SurfaceLogVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->SurfaceLogVelMisfit(weight_index);
     23                J+=element->SurfaceLogVelMisfit();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/SurfaceLogVelMisfitx/SurfaceLogVelMisfitx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void SurfaceLogVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void SurfaceLogVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/SurfaceLogVxVyMisfitx/SurfaceLogVxVyMisfitx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void SurfaceLogVxVyMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters,int weight_index){
     10void SurfaceLogVxVyMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->SurfaceLogVxVyMisfit(weight_index);
     23                J+=element->SurfaceLogVxVyMisfit();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/SurfaceLogVxVyMisfitx/SurfaceLogVxVyMisfitx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void SurfaceLogVxVyMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void SurfaceLogVxVyMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/SurfaceRelVelMisfitx/SurfaceRelVelMisfitx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void SurfaceRelVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters,int weight_index){
     10void SurfaceRelVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->SurfaceRelVelMisfit(weight_index);
     23                J+=element->SurfaceRelVelMisfit();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/SurfaceRelVelMisfitx/SurfaceRelVelMisfitx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void SurfaceRelVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void SurfaceRelVelMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/ThicknessAbsMisfitx/ThicknessAbsMisfitx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void ThicknessAbsMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters, int weight_index){
     10void ThicknessAbsMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->ThicknessAbsMisfit(weight_index);
     23                J+=element->ThicknessAbsMisfit();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/ThicknessAbsMisfitx/ThicknessAbsMisfitx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void ThicknessAbsMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void ThicknessAbsMisfitx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/ThicknessAcrossGradientx/ThicknessAcrossGradientx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void ThicknessAcrossGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters,int weight_index){
     10void ThicknessAcrossGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->ThicknessAcrossGradient(weight_index);
     23                J+=element->ThicknessAcrossGradient();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/ThicknessAcrossGradientx/ThicknessAcrossGradientx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void ThicknessAcrossGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void ThicknessAcrossGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
  • issm/trunk-jpl/src/c/modules/ThicknessAlongGradientx/ThicknessAlongGradientx.cpp

    r15838 r16314  
    88#include "../../toolkits/toolkits.h"
    99
    10 void ThicknessAlongGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters,int weight_index){
     10void ThicknessAlongGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials,Parameters* parameters){
    1111
    1212        /*Intermediary*/
     
    2121        for (i=0;i<elements->Size();i++){
    2222                element=dynamic_cast<Element*>(elements->GetObjectByOffset(i));
    23                 J+=element->ThicknessAlongGradient(weight_index);
     23                J+=element->ThicknessAlongGradient();
    2424        }
    2525
  • issm/trunk-jpl/src/c/modules/ThicknessAlongGradientx/ThicknessAlongGradientx.h

    r15130 r16314  
    99
    1010/* local prototypes: */
    11 void ThicknessAlongGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters,int weight_index);
     11void ThicknessAlongGradientx( IssmDouble* pJ, Elements* elements,Nodes* nodes, Vertices* vertices, Loads* loads, Materials* materials, Parameters* parameters);
    1212
    1313#endif
Note: See TracChangeset for help on using the changeset viewer.