Beispiel #1
0
static int RCMatOperationsInitialize(struct  DSDPDataMat_Ops* rcmatoperator){
  int info;
  if (rcmatoperator==NULL) return 0;
  info=DSDPDataMatOpsInitialize(rcmatoperator); if (info){ return info;}
  rcmatoperator->matfactor1=RCMatFactor;
  rcmatoperator->matgetrank=RCMatGetRank;
  rcmatoperator->ptr_matgetrank=1;
  
  rcmatoperator->matgeteig=RCMatGetEig;
  rcmatoperator->ptr_matgeteig=1;
  rcmatoperator->matvecvec=RCMatVecVec;
  rcmatoperator->ptr_matvecvec=1;
  rcmatoperator->matrownz=RCMatGetRowNnz;
  rcmatoperator->matdot=RCMatDot;
  rcmatoperator->ptr_matdot=1;
  rcmatoperator->matfnorm2=RCMatFNorm;
  rcmatoperator->matnnz=RCMatCountNonzeros;
  rcmatoperator->mataddrowmultiple=RCMatAddRowMultiple;
  rcmatoperator->mataddallmultiple=RCMatAddMultiple;
  rcmatoperator->matdestroy=RCMatDestroy;
  rcmatoperator->matview=RCMatView;
  rcmatoperator->matname=datamatname;
  rcmatoperator->id=27;
  return 0;
}
Beispiel #2
0
static int IdentitymatOperationsInitializeF(struct  DSDPDataMat_Ops* spdiagops){
  int info;
  if (spdiagops==NULL) return 0;
  info=DSDPDataMatOpsInitialize(spdiagops); if (info){return info;}
  spdiagops->matfactor1=IdentityMatFactor;
  spdiagops->matgetrank=IdentityMatGetRank;
  spdiagops->matgeteig=IdentityMatGetEig;
  spdiagops->matvecvec=IdentityMatVecVec;
  spdiagops->matrownz=IdentityMatGetRowNnz;
  spdiagops->matdot=IdentityMatDotF;
  spdiagops->matfnorm2=IdentityMatFNorm2;
  spdiagops->matnnz=IdentityMatCountNonzeros;
  spdiagops->mataddrowmultiple=IdentityMatAddRowMultiple;
  spdiagops->mataddallmultiple=IdentityMatAddMultipleF;
  spdiagops->matdestroy=IdentityMatDestroy;
  spdiagops->matview=IdentityMatView;
  spdiagops->id=12;
  spdiagops->matname=datamatname;
  return 0;
}
Beispiel #3
0
static int DvechmatOpsInitialize(struct  DSDPDataMat_Ops *sops){
  int info;
  if (sops==NULL) return 0;
  info=DSDPDataMatOpsInitialize(sops); DSDPCHKERR(info);
  sops->matvecvec=DvechmatVecVec;
  sops->matdot=DvechmatDot;
  sops->mataddrowmultiple=DvechmatGetRowAdd;
  sops->mataddallmultiple=DvechmatAddMultiple;
  sops->matview=DvechmatView;
  sops->matdestroy=DvechmatDestroy;
  sops->matfactor2=DvechmatFactor;
  sops->matgetrank=DvechmatGetRank;
  sops->matgeteig=DvechmatGetEig;
  sops->matrownz=DvechmatGetRowNnz;
  sops->matfnorm2=DvechmatFNorm2;
  sops->matnnz=DvechmatCountNonzeros;
  sops->id=1;
  sops->matname=datamatname;
  return 0;
}