Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > df736a3bc446df5b16150bebb7296274 > files > 66

DSDP-devel-5.8-2.fc14.i686.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>DSDP: src/sdp/dsdpadddatamat.c Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">DSDP</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="dir_23046874d7fed141927c769a66d8e3a5.html">src</a>      </li>
      <li class="navelem"><a class="el" href="dir_2c21778722bc8593635d5ebd154ac3f7.html">sdp</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">dsdpadddatamat.c</div>  </div>
</div>
<div class="contents">
<a href="dsdpadddatamat_8c.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#include &quot;<a class="code" href="dsdpdatamat_8h.html" title="The interface between the SDPCone and the data matrices.">dsdpdatamat.h</a>&quot;</span>
<a name="l00002"></a>00002 <span class="preprocessor">#include &quot;<a class="code" href="dsdpsys_8h.html" title="Error handling, printing, and profiling.">dsdpsys.h</a>&quot;</span>
<a name="l00003"></a>00003 <span class="preprocessor">#include &quot;<a class="code" href="dsdp5_8h.html" title="The API to DSDP for those applications using DSDP as a subroutine library.">dsdp5.h</a>&quot;</span>
<a name="l00004"></a>00004 
<a name="l00010"></a>00010 <span class="keyword">extern</span> <span class="keywordtype">int</span> DSDPGetZeroDataMatOps(<span class="keyword">struct</span> <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**);
<a name="l00011"></a>00011 <span class="keyword">extern</span> <span class="keywordtype">int</span> DSDPGetConstantMat(<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keywordtype">char</span>,<span class="keyword">struct</span> <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00012"></a>00012 
<a name="l00013"></a>00013 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#a3581056403fa8d43ae55fe0a0c05da3c" title="Given data in packed symmetric format, create a sparse matrix usuable by DSDP.">DSDPGetVechMat</a>(<span class="keywordtype">int</span>,<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keyword">const</span> <span class="keywordtype">int</span>[], <span class="keyword">const</span> <span class="keywordtype">double</span>[],<span class="keywordtype">int</span>, <span class="keyword">struct</span>  <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00014"></a>00014 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#a0768b0a901802a81620edce65de06fac" title="Given data in full symmetric format, create a sparse matrix usuable by DSDP.">DSDPGetVecUMat</a>(<span class="keywordtype">int</span>,<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keyword">const</span> <span class="keywordtype">int</span>[], <span class="keyword">const</span> <span class="keywordtype">double</span>[],<span class="keywordtype">int</span>, <span class="keyword">struct</span>  <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00015"></a>00015 
<a name="l00016"></a>00016 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#a70f184657b272a2a2e925fc00d16a6a7" title="Create a sparse matrix usuable by DSDP in packed symmetric format.">DSDPGetIdentityDataMatP</a>(<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keyword">struct</span> <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00017"></a>00017 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#a45ed78edf6c7d30fda26d6adeb693fc2" title="Create a sparse matrix usuable by DSDP in full symmetric format.">DSDPGetIdentityDataMatF</a>(<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keyword">struct</span> <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00018"></a>00018 
<a name="l00019"></a>00019 <span class="keyword">extern</span> <span class="keywordtype">int</span> DSDPGetDMat(<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keywordtype">double</span>[],<span class="keyword">struct</span>  <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00020"></a>00020 
<a name="l00021"></a>00021 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#ae1b4f6c82deff9c0def2778a50320605" title="Create a rank one matrix usuable by DSDP in packed symmetric format.">DSDPGetR1PMat</a>(<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keywordtype">int</span>,<span class="keyword">const</span> <span class="keywordtype">int</span>[],<span class="keyword">const</span> <span class="keywordtype">double</span>[],<span class="keywordtype">int</span>,<span class="keyword">struct</span>  <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00022"></a>00022 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#a1dec4948b43ccfd25ba0e320359a7899" title="Create a rank one matrix usuable by DSDP in full symmetric format.">DSDPGetR1UMat</a>(<span class="keywordtype">int</span>,<span class="keywordtype">double</span>,<span class="keywordtype">int</span>,<span class="keyword">const</span> <span class="keywordtype">int</span>[],<span class="keyword">const</span> <span class="keywordtype">double</span>[],<span class="keywordtype">int</span>,<span class="keyword">struct</span>  <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>**,<span class="keywordtype">void</span>**);
<a name="l00023"></a>00023 
<a name="l00024"></a>00024 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#ga16144b39108a8daef0d993f14404d6ca" title="Add a data matrix .">SDPConeAddDataMatrix</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a>,<span class="keywordtype">int</span>, <span class="keywordtype">int</span>, <span class="keywordtype">int</span>, <span class="keywordtype">char</span>, <span class="keyword">struct</span> <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>*, <span class="keywordtype">void</span>*);
<a name="l00025"></a>00025 <span class="keyword">extern</span> <span class="keywordtype">int</span> <a class="code" href="dsdpadddata_8c.html#a3a1012a610dff7102fdf219f9d94ff40" title="Add identity to dual matrix.">SDPConeSetRMatrix</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a>,<span class="keywordtype">int</span>,<span class="keywordtype">int</span>,<span class="keywordtype">char</span>,<span class="keyword">struct</span> <a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>*,<span class="keywordtype">void</span>*);
<a name="l00026"></a>00026 
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00029"></a>00029 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeAddASparseVecMat&quot;</span>
<a name="l00030"></a>00030 <span class="preprocessor"></span>
<a name="l00049"></a><a class="code" href="group__SDPData.html#ga16ceede5a0ddb2717ca40ffe2a5f3d2f">00049</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#ga16ceede5a0ddb2717ca40ffe2a5f3d2f" title="Add data matrix  in a sparse format.">SDPConeAddASparseVecMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00050"></a>00050                             <span class="keywordtype">double</span> alpha, <span class="keywordtype">int</span> ishift, 
<a name="l00051"></a>00051                             <span class="keyword">const</span> <span class="keywordtype">int</span> ind[], <span class="keyword">const</span> <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00052"></a>00052   
<a name="l00053"></a>00053   <span class="keywordtype">int</span> info;
<a name="l00054"></a>00054   <span class="keywordtype">char</span> UPLQ;
<a name="l00055"></a>00055   <span class="keywordtype">void</span>* dmat=0;
<a name="l00056"></a>00056   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* dmatops=0;
<a name="l00057"></a>00057   
<a name="l00058"></a>00058   DSDPFunctionBegin;
<a name="l00059"></a>00059   info=<a class="code" href="group__SDPData.html#gabb32703bcca3a703fbbb591ee6737118" title="Get the storage format for the block.">SDPConeGetStorageFormat</a>(sdpcone,blockj,&amp;UPLQ); DSDPCHKERR(info);
<a name="l00060"></a>00060   DSDPLogInfo(0,20,<span class="stringliteral">&quot;Set sparse matrix:  Block: %d, Variable %d, size: %d, Nonzeros: %d .\n&quot;</span>,blockj,vari,n,nnz);
<a name="l00061"></a>00061   <span class="keywordflow">switch</span> (UPLQ){
<a name="l00062"></a>00062   <span class="keywordflow">case</span> <span class="charliteral">&#39;P&#39;</span>:
<a name="l00063"></a>00063     info=<a class="code" href="dsdpadddatamat_8c.html#a3581056403fa8d43ae55fe0a0c05da3c" title="Given data in packed symmetric format, create a sparse matrix usuable by DSDP.">DSDPGetVechMat</a>(n,ishift,alpha,ind,val,nnz,&amp;dmatops,&amp;dmat); DSDPCHKERR(info);
<a name="l00064"></a>00064     <span class="keywordflow">break</span>;
<a name="l00065"></a>00065   <span class="keywordflow">case</span> <span class="charliteral">&#39;U&#39;</span>:
<a name="l00066"></a>00066     info=<a class="code" href="dsdpadddatamat_8c.html#a0768b0a901802a81620edce65de06fac" title="Given data in full symmetric format, create a sparse matrix usuable by DSDP.">DSDPGetVecUMat</a>(n,ishift,alpha,ind,val,nnz,&amp;dmatops,&amp;dmat); DSDPCHKERR(info);
<a name="l00067"></a>00067     <span class="keywordflow">break</span>;
<a name="l00068"></a>00068   }
<a name="l00069"></a>00069   info=<a class="code" href="group__SDPData.html#ga16144b39108a8daef0d993f14404d6ca" title="Add a data matrix .">SDPConeAddDataMatrix</a>(sdpcone,blockj,vari,n,UPLQ,dmatops,dmat); DSDPCHKERR(info);
<a name="l00070"></a>00070   DSDPFunctionReturn(0);
<a name="l00071"></a>00071 }
<a name="l00072"></a>00072 
<a name="l00073"></a>00073 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00074"></a>00074 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeAddSparseVecMat&quot; </span>
<a name="l00075"></a>00075 <span class="preprocessor"></span><span class="comment">/* Needed for backward compatibility */</span>
<a name="l00076"></a>00076 <span class="keywordtype">int</span> SDPConeAddSparseVecMat(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00077"></a>00077                            <span class="keywordtype">int</span> ishift,<span class="keyword">const</span> <span class="keywordtype">int</span> ind[], <span class="keyword">const</span> <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00078"></a>00078   
<a name="l00079"></a>00079   <span class="keywordtype">int</span> info;
<a name="l00080"></a>00080   
<a name="l00081"></a>00081   DSDPFunctionBegin;
<a name="l00082"></a>00082   info= <a class="code" href="group__SDPData.html#ga16ceede5a0ddb2717ca40ffe2a5f3d2f" title="Add data matrix  in a sparse format.">SDPConeAddASparseVecMat</a>(sdpcone,blockj,vari,n,
<a name="l00083"></a>00083                                 1.0,ishift,ind,val,nnz);DSDPCHKERR(info);
<a name="l00084"></a>00084   DSDPFunctionReturn(0);
<a name="l00085"></a>00085 }
<a name="l00086"></a>00086 
<a name="l00087"></a>00087 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00088"></a>00088 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetASparseVecMat&quot;</span>
<a name="l00089"></a>00089 <span class="preprocessor"></span>
<a name="l00152"></a><a class="code" href="group__SDPBasic.html#gaa6ed45b2539266f04bd4b8401aa89c06">00152</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPBasic.html#gaa6ed45b2539266f04bd4b8401aa89c06" title="Set data matrix  in a sparse format.">SDPConeSetASparseVecMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00153"></a>00153                             <span class="keywordtype">double</span> alpha,<span class="keywordtype">int</span> ishift,
<a name="l00154"></a>00154                             <span class="keyword">const</span> <span class="keywordtype">int</span> ind[], <span class="keyword">const</span> <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00155"></a>00155   
<a name="l00156"></a>00156   <span class="keywordtype">int</span> info;
<a name="l00157"></a>00157   DSDPFunctionBegin;
<a name="l00158"></a>00158   info=<a class="code" href="group__SDPData.html#ga432458dcffefd28177d23ae8e60cf4d8" title="Remove the data matrix  from the cone.">SDPConeRemoveDataMatrix</a>(sdpcone,blockj,vari); DSDPCHKERR(info);
<a name="l00159"></a>00159   info=<a class="code" href="group__SDPData.html#ga16ceede5a0ddb2717ca40ffe2a5f3d2f" title="Add data matrix  in a sparse format.">SDPConeAddASparseVecMat</a>(sdpcone,blockj,vari,n,alpha,ishift,ind,val,nnz); DSDPCHKERR(info);
<a name="l00160"></a>00160   DSDPFunctionReturn(0);
<a name="l00161"></a>00161 }
<a name="l00162"></a>00162 
<a name="l00163"></a>00163 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00164"></a>00164 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetSparseVecMat&quot;</span>
<a name="l00165"></a>00165 <span class="preprocessor"></span><span class="comment">/* Needed for backward compatibility */</span>
<a name="l00166"></a>00166 <span class="keywordtype">int</span> SDPConeSetSparseVecMat(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00167"></a>00167                            <span class="keywordtype">int</span> ishift,<span class="keyword">const</span> <span class="keywordtype">int</span> ind[], <span class="keyword">const</span> <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00168"></a>00168   
<a name="l00169"></a>00169   <span class="keywordtype">int</span> info;
<a name="l00170"></a>00170   DSDPFunctionBegin;
<a name="l00171"></a>00171   info=<a class="code" href="group__SDPBasic.html#gaa6ed45b2539266f04bd4b8401aa89c06" title="Set data matrix  in a sparse format.">SDPConeSetASparseVecMat</a>(sdpcone,blockj,vari,n,1.0,ishift,ind,val,nnz); DSDPCHKERR(info);
<a name="l00172"></a>00172   DSDPFunctionReturn(0);
<a name="l00173"></a>00173 }
<a name="l00174"></a>00174 
<a name="l00175"></a>00175 
<a name="l00176"></a>00176 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00177"></a>00177 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeAddADenseVecMat&quot;</span>
<a name="l00178"></a>00178 <span class="preprocessor"></span>
<a name="l00203"></a><a class="code" href="group__SDPData.html#gae24f68901d65362c067b2162235c7f60">00203</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#gae24f68901d65362c067b2162235c7f60" title="Add a matrix  in a dense format.">SDPConeAddADenseVecMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari,<span class="keywordtype">int</span> n,
<a name="l00204"></a>00204                           <span class="keywordtype">double</span> alpha,<span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00205"></a>00205   <span class="keywordtype">int</span> info;
<a name="l00206"></a>00206   <span class="keywordtype">char</span> UPLQ;
<a name="l00207"></a>00207   <span class="keywordtype">void</span>* dmat=0;
<a name="l00208"></a>00208   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* dmatops=0;
<a name="l00209"></a>00209   
<a name="l00210"></a>00210   DSDPFunctionBegin;
<a name="l00211"></a>00211   info=<a class="code" href="group__SDPData.html#gabb32703bcca3a703fbbb591ee6737118" title="Get the storage format for the block.">SDPConeGetStorageFormat</a>(sdpcone,blockj,&amp;UPLQ); DSDPCHKERR(info);
<a name="l00212"></a>00212   DSDPLogInfo(0,20,<span class="stringliteral">&quot;Set dense matrix:  Block: %d, Variable %d, size: %d, Nonzeros: %d .\n&quot;</span>,blockj,vari,n,nnz);
<a name="l00213"></a>00213   <span class="keywordflow">switch</span> (UPLQ){
<a name="l00214"></a>00214   <span class="keywordflow">case</span> <span class="charliteral">&#39;P&#39;</span>:
<a name="l00215"></a>00215     info=DSDPGetDMat(n,alpha,val,&amp;dmatops,&amp;dmat); DSDPCHKERR(info);
<a name="l00216"></a>00216     <span class="keywordflow">break</span>;
<a name="l00217"></a>00217   <span class="keywordflow">case</span> <span class="charliteral">&#39;U&#39;</span>:
<a name="l00218"></a>00218     DSDPSETERR(1,<span class="stringliteral">&quot;Dense U Mat type does not exist.\n&quot;</span>);
<a name="l00219"></a>00219     <span class="keywordflow">break</span>;
<a name="l00220"></a>00220   }
<a name="l00221"></a>00221   info=<a class="code" href="group__SDPData.html#ga16144b39108a8daef0d993f14404d6ca" title="Add a data matrix .">SDPConeAddDataMatrix</a>(sdpcone,blockj,vari,n,UPLQ,dmatops,dmat); DSDPCHKERR(info);
<a name="l00222"></a>00222   DSDPFunctionReturn(0);
<a name="l00223"></a>00223 }
<a name="l00224"></a>00224 
<a name="l00225"></a>00225 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00226"></a>00226 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeAddDenseVecMat&quot;</span>
<a name="l00227"></a>00227 <span class="preprocessor"></span><span class="comment">/* Needed for backward compatibility */</span>
<a name="l00228"></a>00228 <span class="keywordtype">int</span> SDPConeAddDenseVecMat(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari,<span class="keywordtype">int</span> n,
<a name="l00229"></a>00229                           <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00230"></a>00230   <span class="keywordtype">int</span> info;  
<a name="l00231"></a>00231   DSDPFunctionBegin;
<a name="l00232"></a>00232   info=<a class="code" href="group__SDPData.html#gae24f68901d65362c067b2162235c7f60" title="Add a matrix  in a dense format.">SDPConeAddADenseVecMat</a>(sdpcone,blockj,vari,n,1.0,val,nnz); DSDPCHKERR(info);
<a name="l00233"></a>00233   DSDPFunctionReturn(0);
<a name="l00234"></a>00234 }
<a name="l00235"></a>00235 
<a name="l00236"></a>00236 
<a name="l00237"></a>00237 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00238"></a>00238 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetADenseVecMat&quot;</span>
<a name="l00239"></a>00239 <span class="preprocessor"></span>
<a name="l00265"></a><a class="code" href="group__SDPBasic.html#ga9e2cd5d5922b5e45c48ec58c7345def0">00265</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPBasic.html#ga9e2cd5d5922b5e45c48ec58c7345def0" title="Set a matrix  in a dense format.">SDPConeSetADenseVecMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari,<span class="keywordtype">int</span> n,
<a name="l00266"></a>00266                           <span class="keywordtype">double</span> alpha,<span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00267"></a>00267   <span class="keywordtype">int</span> info;
<a name="l00268"></a>00268   DSDPFunctionBegin;
<a name="l00269"></a>00269   info=<a class="code" href="group__SDPData.html#ga432458dcffefd28177d23ae8e60cf4d8" title="Remove the data matrix  from the cone.">SDPConeRemoveDataMatrix</a>(sdpcone,blockj,vari); DSDPCHKERR(info);
<a name="l00270"></a>00270   info=<a class="code" href="group__SDPData.html#gae24f68901d65362c067b2162235c7f60" title="Add a matrix  in a dense format.">SDPConeAddADenseVecMat</a>(sdpcone,blockj,vari,n,alpha,val,nnz); DSDPCHKERR(info);
<a name="l00271"></a>00271   DSDPFunctionReturn(0);
<a name="l00272"></a>00272 }
<a name="l00273"></a>00273 
<a name="l00274"></a>00274 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00275"></a>00275 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetDenseVecMat&quot;</span>
<a name="l00276"></a>00276 <span class="preprocessor"></span><span class="comment">/* Needed for backward compatibility */</span>
<a name="l00277"></a>00277 <span class="keywordtype">int</span> SDPConeSetDenseVecMat(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari,<span class="keywordtype">int</span> n,
<a name="l00278"></a>00278                           <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00279"></a>00279   <span class="keywordtype">int</span> info;
<a name="l00280"></a>00280   DSDPFunctionBegin;
<a name="l00281"></a>00281   info=<a class="code" href="group__SDPBasic.html#ga9e2cd5d5922b5e45c48ec58c7345def0" title="Set a matrix  in a dense format.">SDPConeSetADenseVecMat</a>(sdpcone,blockj,vari,n,1.0,val,nnz); DSDPCHKERR(info);
<a name="l00282"></a>00282   DSDPFunctionReturn(0);
<a name="l00283"></a>00283 }
<a name="l00284"></a>00284 
<a name="l00285"></a>00285 
<a name="l00286"></a>00286 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00287"></a>00287 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeAddIdentity&quot;</span>
<a name="l00288"></a>00288 <span class="preprocessor"></span>
<a name="l00299"></a><a class="code" href="group__SDPData.html#ga92697ab67f03fa41024404d70c7748ce">00299</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#ga92697ab67f03fa41024404d70c7748ce" title="Add a matrix  that is a multiple of the identity matrix.">SDPConeAddIdentity</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone, <span class="keywordtype">int</span> blockj,<span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00300"></a>00300                        <span class="keywordtype">double</span> val){
<a name="l00301"></a>00301   <span class="keywordtype">int</span> info;
<a name="l00302"></a>00302   <span class="keywordtype">char</span> UPLQ;
<a name="l00303"></a>00303   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* identitymatops=0;
<a name="l00304"></a>00304   <span class="keywordtype">void</span>* imat=0;
<a name="l00305"></a>00305 
<a name="l00306"></a>00306   DSDPFunctionBegin;
<a name="l00307"></a>00307   DSDPLogInfo(0,20,<span class="stringliteral">&quot;Set identity matrix:  Block: %d, Variable %d, size: %d, Multiple: %4.4e .\n&quot;</span>,blockj,vari,n,val);
<a name="l00308"></a>00308   info=<a class="code" href="group__SDPData.html#gabb32703bcca3a703fbbb591ee6737118" title="Get the storage format for the block.">SDPConeGetStorageFormat</a>(sdpcone,blockj,&amp;UPLQ); DSDPCHKERR(info);
<a name="l00309"></a>00309   <span class="keywordflow">switch</span> (UPLQ){
<a name="l00310"></a>00310   <span class="keywordflow">case</span> <span class="charliteral">&#39;P&#39;</span>:
<a name="l00311"></a>00311     info=<a class="code" href="dsdpadddatamat_8c.html#a70f184657b272a2a2e925fc00d16a6a7" title="Create a sparse matrix usuable by DSDP in packed symmetric format.">DSDPGetIdentityDataMatP</a>(n,val,&amp;identitymatops,&amp;imat);DSDPCHKERR(info);
<a name="l00312"></a>00312     <span class="keywordflow">break</span>;
<a name="l00313"></a>00313   <span class="keywordflow">case</span> <span class="charliteral">&#39;U&#39;</span>:
<a name="l00314"></a>00314     info=<a class="code" href="dsdpadddatamat_8c.html#a45ed78edf6c7d30fda26d6adeb693fc2" title="Create a sparse matrix usuable by DSDP in full symmetric format.">DSDPGetIdentityDataMatF</a>(n,val,&amp;identitymatops,&amp;imat);DSDPCHKERR(info);
<a name="l00315"></a>00315     <span class="keywordflow">break</span>;
<a name="l00316"></a>00316   }
<a name="l00317"></a>00317   info=<a class="code" href="group__SDPData.html#ga16144b39108a8daef0d993f14404d6ca" title="Add a data matrix .">SDPConeAddDataMatrix</a>(sdpcone,blockj,vari,n,UPLQ,identitymatops,imat); DSDPCHKERR(info);
<a name="l00318"></a>00318   DSDPFunctionReturn(0);
<a name="l00319"></a>00319 }
<a name="l00320"></a>00320 
<a name="l00321"></a>00321 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00322"></a>00322 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetIdentity&quot;</span>
<a name="l00323"></a>00323 <span class="preprocessor"></span>
<a name="l00334"></a><a class="code" href="group__SDPData.html#gabdaa31a53990efd50210e0a52b0b23c9">00334</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#gabdaa31a53990efd50210e0a52b0b23c9" title="Set a matrix  to be a multiple of the identity matrix.">SDPConeSetIdentity</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone, <span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00335"></a>00335                        <span class="keywordtype">double</span> val){
<a name="l00336"></a>00336   <span class="keywordtype">int</span> info;
<a name="l00337"></a>00337   DSDPFunctionBegin;
<a name="l00338"></a>00338   info=<a class="code" href="group__SDPData.html#ga432458dcffefd28177d23ae8e60cf4d8" title="Remove the data matrix  from the cone.">SDPConeRemoveDataMatrix</a>(sdpcone,blockj,vari); DSDPCHKERR(info);
<a name="l00339"></a>00339   info=<a class="code" href="group__SDPData.html#ga92697ab67f03fa41024404d70c7748ce" title="Add a matrix  that is a multiple of the identity matrix.">SDPConeAddIdentity</a>(sdpcone,blockj,vari,n,val); DSDPCHKERR(info);
<a name="l00340"></a>00340   DSDPFunctionReturn(0);
<a name="l00341"></a>00341 }
<a name="l00342"></a>00342 
<a name="l00343"></a>00343 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00344"></a>00344 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeAddConstantMat&quot;</span>
<a name="l00345"></a>00345 <span class="preprocessor"></span>
<a name="l00356"></a><a class="code" href="group__SDPData.html#ga5969cf1c812c704f8bb61b0233a33f84">00356</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#ga5969cf1c812c704f8bb61b0233a33f84" title="Add a matrix  whose elements are all the same.">SDPConeAddConstantMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00357"></a>00357                           <span class="keywordtype">double</span> value){
<a name="l00358"></a>00358   <span class="keywordtype">int</span> info;
<a name="l00359"></a>00359   <span class="keywordtype">char</span> UPLQ;
<a name="l00360"></a>00360   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* constantmatops=0;
<a name="l00361"></a>00361   <span class="keywordtype">void</span>* smat=0;
<a name="l00362"></a>00362 
<a name="l00363"></a>00363   DSDPFunctionBegin;
<a name="l00364"></a>00364   DSDPLogInfo(0,20,<span class="stringliteral">&quot;Add allsame matrix:  Block: %d, Variable %d, size: %d, Elements: %4.4e .\n&quot;</span>,blockj,vari,n,value);
<a name="l00365"></a>00365   info=<a class="code" href="group__SDPData.html#gabb32703bcca3a703fbbb591ee6737118" title="Get the storage format for the block.">SDPConeGetStorageFormat</a>(sdpcone,blockj,&amp;UPLQ); DSDPCHKERR(info);
<a name="l00366"></a>00366   <span class="keywordflow">switch</span> (UPLQ){
<a name="l00367"></a>00367   <span class="keywordflow">case</span> <span class="charliteral">&#39;P&#39;</span>:
<a name="l00368"></a>00368     info=DSDPGetConstantMat(n,value,UPLQ,&amp;constantmatops,&amp;smat);DSDPCHKERR(info);
<a name="l00369"></a>00369     <span class="keywordflow">break</span>;
<a name="l00370"></a>00370   <span class="keywordflow">case</span> <span class="charliteral">&#39;U&#39;</span>:
<a name="l00371"></a>00371     info=DSDPGetConstantMat(n,value,UPLQ,&amp;constantmatops,&amp;smat);DSDPCHKERR(info);
<a name="l00372"></a>00372     <span class="keywordflow">break</span>;
<a name="l00373"></a>00373   }
<a name="l00374"></a>00374   info=<a class="code" href="group__SDPData.html#ga16144b39108a8daef0d993f14404d6ca" title="Add a data matrix .">SDPConeAddDataMatrix</a>(sdpcone,blockj,vari,n,UPLQ,constantmatops,smat); DSDPCHKERR(info);
<a name="l00375"></a>00375   DSDPFunctionReturn(0);
<a name="l00376"></a>00376 }
<a name="l00377"></a>00377 
<a name="l00378"></a>00378 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00379"></a>00379 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetConstantMat&quot;</span>
<a name="l00380"></a>00380 <span class="preprocessor"></span>
<a name="l00391"></a><a class="code" href="group__SDPData.html#ga3af8e9398c77b07799bd3cfe29faa070">00391</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#ga3af8e9398c77b07799bd3cfe29faa070" title="Set a matrix  whose elements are all the same.">SDPConeSetConstantMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00392"></a>00392                           <span class="keywordtype">double</span> value){
<a name="l00393"></a>00393   <span class="keywordtype">int</span> info;
<a name="l00394"></a>00394   DSDPFunctionBegin;
<a name="l00395"></a>00395   info=<a class="code" href="group__SDPData.html#ga432458dcffefd28177d23ae8e60cf4d8" title="Remove the data matrix  from the cone.">SDPConeRemoveDataMatrix</a>(sdpcone,blockj,vari); DSDPCHKERR(info);
<a name="l00396"></a>00396   info=<a class="code" href="group__SDPData.html#ga5969cf1c812c704f8bb61b0233a33f84" title="Add a matrix  whose elements are all the same.">SDPConeAddConstantMat</a>(sdpcone,blockj,vari,n,value); DSDPCHKERR(info);
<a name="l00397"></a>00397   DSDPFunctionReturn(0);
<a name="l00398"></a>00398 }
<a name="l00399"></a>00399 
<a name="l00400"></a>00400 
<a name="l00401"></a>00401 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00402"></a>00402 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetZeroMat&quot;</span>
<a name="l00403"></a>00403 <span class="preprocessor"></span>
<a name="l00414"></a><a class="code" href="group__SDPData.html#gaad2a1599cae5d90838ded62d70252f74">00414</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#gaad2a1599cae5d90838ded62d70252f74" title="Set a matrix  whose elements are all equal zero.">SDPConeSetZeroMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n){
<a name="l00415"></a>00415   <span class="keywordtype">int</span> info;
<a name="l00416"></a>00416   <span class="keywordtype">char</span> UPLQ;
<a name="l00417"></a>00417   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* zeromatops=0;
<a name="l00418"></a>00418   DSDPFunctionBegin;
<a name="l00419"></a>00419   DSDPLogInfo(0,20,<span class="stringliteral">&quot;Add zero matrix:  Block: %d, Variable %d, size: %d .\n&quot;</span>,blockj,vari,n);
<a name="l00420"></a>00420   info=DSDPGetZeroDataMatOps(&amp;zeromatops); DSDPCHKERR(info);
<a name="l00421"></a>00421   info=<a class="code" href="group__SDPData.html#gabb32703bcca3a703fbbb591ee6737118" title="Get the storage format for the block.">SDPConeGetStorageFormat</a>(sdpcone,blockj,&amp;UPLQ); DSDPCHKERR(info);
<a name="l00422"></a>00422   info=<a class="code" href="group__SDPData.html#ga432458dcffefd28177d23ae8e60cf4d8" title="Remove the data matrix  from the cone.">SDPConeRemoveDataMatrix</a>(sdpcone,blockj,vari); DSDPCHKERR(info);
<a name="l00423"></a>00423   info=<a class="code" href="group__SDPData.html#ga16144b39108a8daef0d993f14404d6ca" title="Add a data matrix .">SDPConeAddDataMatrix</a>(sdpcone,blockj,vari,n,UPLQ,zeromatops,0); DSDPCHKERR(info);
<a name="l00424"></a>00424   DSDPFunctionReturn(0);
<a name="l00425"></a>00425 }
<a name="l00426"></a>00426 
<a name="l00427"></a>00427 <span class="preprocessor">#undef __FUNCT__  </span>
<a name="l00428"></a>00428 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetRIdentity&quot;</span>
<a name="l00429"></a>00429 <span class="preprocessor"></span>
<a name="l00438"></a><a class="code" href="dsdpsdp_8h.html#a6fa1f1c3c988181ab1dbf8bbc515fbef">00438</a> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#a5d965be4615ce48c2b0bd3d88399a40c" title="Add identify matrix to dual matrix.">SDPConeSetRIdentity</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> n, <span class="keywordtype">double</span> rr){ 
<a name="l00439"></a>00439   <span class="keywordtype">int</span> info;
<a name="l00440"></a>00440   <span class="keywordtype">char</span> UPLQ;
<a name="l00441"></a>00441   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* identitymatops=0;
<a name="l00442"></a>00442   <span class="keywordtype">void</span>* imat=0;
<a name="l00443"></a>00443   DSDPFunctionBegin;
<a name="l00444"></a>00444   info=<a class="code" href="group__SDPData.html#gabb32703bcca3a703fbbb591ee6737118" title="Get the storage format for the block.">SDPConeGetStorageFormat</a>(sdpcone,blockj,&amp;UPLQ); DSDPCHKERR(info);
<a name="l00445"></a>00445   <span class="keywordflow">switch</span> (UPLQ){
<a name="l00446"></a>00446   <span class="keywordflow">case</span> <span class="charliteral">&#39;P&#39;</span>:
<a name="l00447"></a>00447     info=<a class="code" href="dsdpadddatamat_8c.html#a70f184657b272a2a2e925fc00d16a6a7" title="Create a sparse matrix usuable by DSDP in packed symmetric format.">DSDPGetIdentityDataMatP</a>(n,rr,&amp;identitymatops,&amp;imat);DSDPCHKERR(info); <span class="keywordflow">break</span>;
<a name="l00448"></a>00448   <span class="keywordflow">case</span> <span class="charliteral">&#39;U&#39;</span>:
<a name="l00449"></a>00449     info=<a class="code" href="dsdpadddatamat_8c.html#a45ed78edf6c7d30fda26d6adeb693fc2" title="Create a sparse matrix usuable by DSDP in full symmetric format.">DSDPGetIdentityDataMatF</a>(n,rr,&amp;identitymatops,&amp;imat);DSDPCHKERR(info); <span class="keywordflow">break</span>;
<a name="l00450"></a>00450   <span class="keywordflow">default</span>:
<a name="l00451"></a>00451     <span class="keywordflow">break</span>;
<a name="l00452"></a>00452   }
<a name="l00453"></a>00453   info=<a class="code" href="dsdpadddata_8c.html#a3a1012a610dff7102fdf219f9d94ff40" title="Add identity to dual matrix.">SDPConeSetRMatrix</a>(sdpcone,blockj,n,UPLQ,identitymatops,imat); DSDPCHKERR(info);
<a name="l00454"></a>00454 
<a name="l00455"></a>00455   DSDPFunctionReturn(0);
<a name="l00456"></a>00456 }
<a name="l00457"></a>00457 
<a name="l00458"></a>00458 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00459"></a>00459 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeAddARankOneMat&quot;</span>
<a name="l00460"></a>00460 <span class="preprocessor"></span>
<a name="l00478"></a><a class="code" href="group__SDPData.html#ga0568ca9b863657cf47e431b4ee580194">00478</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#ga0568ca9b863657cf47e431b4ee580194" title="Add data matrix  where v is a sparse vector.">SDPConeAddARankOneMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00479"></a>00479                           <span class="keywordtype">double</span> alpha, <span class="keywordtype">int</span> ishift,<span class="keyword">const</span> <span class="keywordtype">int</span> ind[], <span class="keyword">const</span> <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00480"></a>00480   
<a name="l00481"></a>00481   <span class="keywordtype">int</span> info;
<a name="l00482"></a>00482   <span class="keywordtype">char</span> UPLQ;
<a name="l00483"></a>00483   <span class="keywordtype">void</span>* dmat=0;
<a name="l00484"></a>00484   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* dmatops=0;
<a name="l00485"></a>00485   
<a name="l00486"></a>00486   DSDPFunctionBegin;
<a name="l00487"></a>00487   info=<a class="code" href="group__SDPData.html#gabb32703bcca3a703fbbb591ee6737118" title="Get the storage format for the block.">SDPConeGetStorageFormat</a>(sdpcone,blockj,&amp;UPLQ); DSDPCHKERR(info);
<a name="l00488"></a>00488   DSDPLogInfo(0,20,<span class="stringliteral">&quot;Set sparse matrix:  Block: %d, Variable %d, size: %d, Nonzeros: %d .\n&quot;</span>,blockj,vari,n,nnz);
<a name="l00489"></a>00489   <span class="keywordflow">switch</span> (UPLQ){
<a name="l00490"></a>00490   <span class="keywordflow">case</span> <span class="charliteral">&#39;P&#39;</span>:
<a name="l00491"></a>00491     info=<a class="code" href="dsdpadddatamat_8c.html#ae1b4f6c82deff9c0def2778a50320605" title="Create a rank one matrix usuable by DSDP in packed symmetric format.">DSDPGetR1PMat</a>(n,alpha,ishift,ind,val,nnz,&amp;dmatops,&amp;dmat); DSDPCHKERR(info);
<a name="l00492"></a>00492     <span class="keywordflow">break</span>;
<a name="l00493"></a>00493   <span class="keywordflow">case</span> <span class="charliteral">&#39;U&#39;</span>:
<a name="l00494"></a>00494     info=<a class="code" href="dsdpadddatamat_8c.html#a1dec4948b43ccfd25ba0e320359a7899" title="Create a rank one matrix usuable by DSDP in full symmetric format.">DSDPGetR1UMat</a>(n,alpha,ishift,ind,val,nnz,&amp;dmatops,&amp;dmat); DSDPCHKERR(info);
<a name="l00495"></a>00495     <span class="keywordflow">break</span>;
<a name="l00496"></a>00496   }
<a name="l00497"></a>00497   info=<a class="code" href="group__SDPData.html#ga16144b39108a8daef0d993f14404d6ca" title="Add a data matrix .">SDPConeAddDataMatrix</a>(sdpcone,blockj,vari,n,UPLQ,dmatops,dmat); DSDPCHKERR(info);
<a name="l00498"></a>00498   DSDPFunctionReturn(0);
<a name="l00499"></a>00499 }
<a name="l00500"></a>00500 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00501"></a>00501 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;SDPConeSetARankOneMat&quot;</span>
<a name="l00502"></a>00502 <span class="preprocessor"></span>
<a name="l00519"></a><a class="code" href="group__SDPData.html#gafb0929bf0ecd35329ecbf5a3e444cc7b">00519</a> <span class="keywordtype">int</span> <a class="code" href="group__SDPData.html#gafb0929bf0ecd35329ecbf5a3e444cc7b" title="Set data matrix  where v is a sparse vector.">SDPConeSetARankOneMat</a>(<a class="code" href="structSDPCone__C.html" title="Internal structure for semidefinite cone.">SDPCone</a> sdpcone,<span class="keywordtype">int</span> blockj, <span class="keywordtype">int</span> vari, <span class="keywordtype">int</span> n,
<a name="l00520"></a>00520                           <span class="keywordtype">double</span> alpha, <span class="keywordtype">int</span> ishift,<span class="keyword">const</span> <span class="keywordtype">int</span> ind[], <span class="keyword">const</span> <span class="keywordtype">double</span> val[], <span class="keywordtype">int</span> nnz){
<a name="l00521"></a>00521   
<a name="l00522"></a>00522 
<a name="l00523"></a>00523   <span class="keywordtype">int</span> info;
<a name="l00524"></a>00524   DSDPFunctionBegin;
<a name="l00525"></a>00525   info=<a class="code" href="group__SDPData.html#ga432458dcffefd28177d23ae8e60cf4d8" title="Remove the data matrix  from the cone.">SDPConeRemoveDataMatrix</a>(sdpcone,blockj,vari); DSDPCHKERR(info);
<a name="l00526"></a>00526   info=<a class="code" href="group__SDPData.html#ga0568ca9b863657cf47e431b4ee580194" title="Add data matrix  where v is a sparse vector.">SDPConeAddARankOneMat</a>(sdpcone,blockj,vari,n,alpha,ishift,ind,val,nnz); DSDPCHKERR(info);
<a name="l00527"></a>00527   DSDPFunctionReturn(0);
<a name="l00528"></a>00528 }
<a name="l00529"></a>00529 
<a name="l00530"></a>00530 <span class="preprocessor">#undef __FUNCT__</span>
<a name="l00531"></a>00531 <span class="preprocessor"></span><span class="preprocessor">#define __FUNCT__ &quot;DSDPSetDataMatZero&quot;</span>
<a name="l00532"></a>00532 <span class="preprocessor"></span>
<a name="l00537"></a><a class="code" href="dsdpsdp_8h.html#a81cd5166f1eb03d59eed0a88f3f66d75">00537</a> <span class="keywordtype">int</span> <a class="code" href="dsdpadddatamat_8c.html#a6ddbf7fda16763eb7654fa849523dfd1" title="Make a data matrix a zero matrix.">DSDPSetDataMatZero</a>(<a class="code" href="structDSDPDataMat__C.html" title="Symmetric data matrix for one block in the semidefinite cone.">DSDPDataMat</a> *A){
<a name="l00538"></a>00538   <span class="keywordtype">int</span> info;
<a name="l00539"></a>00539   <span class="keyword">struct </span><a class="code" href="structDSDPDataMat__Ops.html" title="Table of function pointers that operate on the data matrix.">DSDPDataMat_Ops</a>* zeromatops=0;
<a name="l00540"></a>00540   DSDPFunctionBegin;
<a name="l00541"></a>00541   info=DSDPGetZeroDataMatOps(&amp;zeromatops); DSDPCHKERR(info);
<a name="l00542"></a>00542   info=<a class="code" href="dsdpdatamat_8c.html#a830de0c064b4d8b3109755fe0c3db05c" title="Set the opaque pointer and function pointers to the matrix.">DSDPDataMatSetData</a>(A,zeromatops,0);DSDPCHKERR(info);
<a name="l00543"></a>00543   DSDPFunctionReturn(0);
<a name="l00544"></a>00544 }
<a name="l00545"></a>00545 
</pre></div></div>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Wed Jun 8 2011 for DSDP by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>