source: issm/oecreview/Archive/19101-20495/ISSM-19976-19977.diff@ 20498

Last change on this file since 20498 was 20498, checked in by Mathieu Morlighem, 9 years ago

CHG: done with Archive/19101-20495

File size: 3.6 KB
  • ../trunk-jpl/src/c/toolkits/objects/Vector.h

     
    280280
    281281                }
    282282                /*}}}*/
     283                void Shift(doubletype shift){_assert_(this);/*{{{*/
     284
     285                        if(type==PetscVecType){
     286                                #ifdef _HAVE_PETSC_
     287                                this->pvector->Shift(shift);
     288                                #endif
     289                        }
     290                        else this->ivector->Shift(shift);
     291                }
     292                /*}}}*/
    283293                void Copy(Vector* to){_assert_(this);/*{{{*/
    284294
    285295                        if(type==PetscVecType){
  • ../trunk-jpl/src/c/toolkits/issm/IssmAbsVec.h

     
    4141                virtual void AXPY(IssmAbsVec* X, doubletype a)=0;
    4242                virtual void AYPX(IssmAbsVec* X, doubletype a)=0;
    4343                virtual doubletype* ToMPISerial(void)=0;
     44                virtual void Shift(doubletype shift)=0;
    4445                virtual void Copy(IssmAbsVec* to)=0;
    4546                virtual doubletype Norm(NormMode mode)=0;
    4647                virtual void Scale(doubletype scale_factor)=0;
  • ../trunk-jpl/src/c/toolkits/issm/IssmVec.h

     
    179179                        return vector->ToMPISerial();
    180180                }
    181181                /*}}}*/
     182                void Shift(doubletype shift){/*{{{*/
     183                        vector->Shift(shift);
     184                }
     185                /*}}}*/
    182186                void Copy(IssmVec* to){/*{{{*/
    183187                        vector->Copy(to->vector);
    184188                }
  • ../trunk-jpl/src/c/toolkits/issm/IssmMpiVec.h

     
    395395
    396396                }
    397397                /*}}}*/
     398                void Shift(doubletype shift){/*{{{*/
     399                        for(int i=0;i<this->m;i++)this->vector[i]+=shift;
     400                }
     401                /*}}}*/
    398402                void Copy(IssmAbsVec<doubletype>* toin){/*{{{*/
    399403
    400404                        int i;
  • ../trunk-jpl/src/c/toolkits/issm/IssmSeqVec.h

     
    198198
    199199                }
    200200                /*}}}*/
     201                void Shift(doubletype shift){/*{{{*/
     202
     203                        for(int i=0;i<this->M;i++)this->vector[i]+=shift;
     204
     205                }
     206                /*}}}*/
    201207                void Copy(IssmAbsVec<doubletype>* toin){/*{{{*/
    202208
    203209                        int i;
  • ../trunk-jpl/src/c/toolkits/petsc/objects/PetscVec.h

     
    4949                void        AXPY(PetscVec* X, IssmDouble a);
    5050                void        AYPX(PetscVec* X, IssmDouble a);
    5151                IssmDouble* ToMPISerial(void);
     52                void        Shift(IssmDouble shift);
    5253                void        Copy(PetscVec* to);
    5354                IssmDouble  Norm(NormMode norm_type);
    5455                IssmDouble  Max(void);
  • ../trunk-jpl/src/c/toolkits/petsc/objects/PetscVec.cpp

     
    162162
    163163}
    164164/*}}}*/
     165void PetscVec::Shift(IssmDouble shift){/*{{{*/
     166
     167        if(this->vector) VecShift(this->vector,shift);
     168
     169}
     170/*}}}*/
    165171void PetscVec::Copy(PetscVec* to){/*{{{*/
    166172
    167173        if(this->vector) VecCopy(this->vector,to->vector);
Note: See TracBrowser for help on using the repository browser.