<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to compute a Inverse (Sparse Matrix)? in Intel® oneAPI Math Kernel Library</title>
    <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Stuck-with-PARDISO-Solver/m-p/879707#M9391</link>
    <description>&lt;DIV style="margin: 0px; height: auto;"&gt;&lt;/DIV&gt;
&lt;DIV&gt;Can anyone please help me to find that problem.. i need the solver for my bachelor theisis but my c skills seem to be not good enough. thank you&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;
I get a "ERRORduringsymbolicfactorization:-7" while solving that symmetric-Matrix.&lt;BR /&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;TABLE border="1px solid" cellspacing="0" cellpadding="0" width="200"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;First i thought it was the lower right block of zeros which makes problems, so i changed the matrix to:&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;TABLE border="1px solid" cellspacing="0" cellpadding="0" width="200"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;BR /&gt;
&lt;DIV&gt;It still does not work for me. What i am doing wrong?&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;Here is my Code:&lt;/DIV&gt;
&lt;DIV&gt;
&lt;PRE&gt;[cpp]#include &lt;STDIO.H&gt;
#include &lt;STDLIB.H&gt;
#include &lt;MATH.H&gt;
#include &lt;MKL.H&gt;

extern int omp_get_max_threads();
extern int PARDISO(void*,int*,int*,int*,int*,int*, double*,int*,int*,int*,int*,int*, int*,double*,double*,int*);

int main(void)
{
	int n=6;
	int ia[6]={1,4,7,10,13,14};
	int ja[14]={1,5,6,2,5,6,3,5,6,4,5,6,5,6};
	double a[14]={10.0,0.0,1.0,10.0,1.0,1.0,10.0,2.0,1.0,10.0,3.0,1.0,1.0,1.0};
	int mtype=-2;
	double b[6] = { 1.0,-1.0,1.0,-1.0,0.0,0.0 };
	double x[6];
	int nrhs=1;	
	void* pt[36];
	int iparm[64];
	int maxfct,mnum,phase,error,msglvl;
	int	i;
	double	ddum;
	int idum;

	for(i=0;i&amp;lt;64;i++){ iparm&lt;I&gt;=0; }
	iparm[0]=1; iparm[1]=2;
	iparm[2]=mkl_get_max_threads();
	iparm[3]=0; iparm[4]=0; iparm[5]=0; iparm[6]=16; iparm[7]=2;
	iparm[8]=0; iparm[9]=13; iparm[10]=1; iparm[11]=0; iparm[12]=0;
	iparm[13]=0; iparm[14]=0; iparm[15]=0; iparm[16]=0; iparm[17]=-1;
	iparm[18]=-1; iparm[19]=0;
	maxfct=1; mnum=1; msglvl=0; error=0;
	
	for(i=0;i&amp;lt;36;i++){pt&lt;I&gt;=0;}
	
	phase=11;
	PARDISO(pt,&amp;amp;maxfct,&amp;amp;mnum,&amp;amp;mtype,&amp;amp;phase,&amp;amp;n,a,ia,ja,&amp;amp;idum,&amp;amp;nrhs,iparm,&amp;amp;msglvl,&amp;amp;ddum,&amp;amp;ddum,&amp;amp;error);
	if(error!=0){ printf("nERRORduringsymbolicfactorization:%d",error); exit(1);}
	.................[/cpp]&lt;/I&gt;&lt;/I&gt;&lt;/MKL.H&gt;&lt;/MATH.H&gt;&lt;/STDLIB.H&gt;&lt;/STDIO.H&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;DIV&gt;I copy &amp;amp; pasted the code from the mkl_manual.pdf page 3379 - 3381.&lt;/DIV&gt;
&lt;DIV&gt;The only i did to the code are changes are:&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;int n=6;&lt;BR /&gt; int ia[6]={1,4,7,10,13,14};&lt;BR /&gt; int ja[14]={1,5,6,2,5,6,3,5,6,4,5,6,5,6};&lt;BR /&gt; double a[14]={10.0,0.0,1.0,10.0,1.0,1.0,10.0,2.0,1.0,10.0,3.0,1.0,1.0,1.0};&lt;BR /&gt; double b[6] = { 1.0,-1.0,1.0,-1.0,0.0,0.0 };&lt;BR /&gt; double x[6];&lt;BR /&gt; void* pt[36];&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;for(i=0;i&amp;lt;36;i++){pt&lt;I&gt;=0;}&lt;/I&gt;&lt;/DIV&gt;</description>
    <pubDate>Mon, 23 Nov 2009 14:32:02 GMT</pubDate>
    <dc:creator>darkfate</dc:creator>
    <dc:date>2009-11-23T14:32:02Z</dc:date>
    <item>
      <title>Stuck with PARDISO Solver</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Stuck-with-PARDISO-Solver/m-p/879706#M9390</link>
      <description>... Outdated ...</description>
      <pubDate>Sat, 21 Nov 2009 01:53:35 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Stuck-with-PARDISO-Solver/m-p/879706#M9390</guid>
      <dc:creator>darkfate</dc:creator>
      <dc:date>2009-11-21T01:53:35Z</dc:date>
    </item>
    <item>
      <title>Re: How to compute a Inverse (Sparse Matrix)?</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Stuck-with-PARDISO-Solver/m-p/879707#M9391</link>
      <description>&lt;DIV style="margin: 0px; height: auto;"&gt;&lt;/DIV&gt;
&lt;DIV&gt;Can anyone please help me to find that problem.. i need the solver for my bachelor theisis but my c skills seem to be not good enough. thank you&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;
I get a "ERRORduringsymbolicfactorization:-7" while solving that symmetric-Matrix.&lt;BR /&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;TABLE border="1px solid" cellspacing="0" cellpadding="0" width="200"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;First i thought it was the lower right block of zeros which makes problems, so i changed the matrix to:&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;TABLE border="1px solid" cellspacing="0" cellpadding="0" width="200"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;BR /&gt;
&lt;DIV&gt;It still does not work for me. What i am doing wrong?&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;Here is my Code:&lt;/DIV&gt;
&lt;DIV&gt;
&lt;PRE&gt;[cpp]#include &lt;STDIO.H&gt;
#include &lt;STDLIB.H&gt;
#include &lt;MATH.H&gt;
#include &lt;MKL.H&gt;

extern int omp_get_max_threads();
extern int PARDISO(void*,int*,int*,int*,int*,int*, double*,int*,int*,int*,int*,int*, int*,double*,double*,int*);

int main(void)
{
	int n=6;
	int ia[6]={1,4,7,10,13,14};
	int ja[14]={1,5,6,2,5,6,3,5,6,4,5,6,5,6};
	double a[14]={10.0,0.0,1.0,10.0,1.0,1.0,10.0,2.0,1.0,10.0,3.0,1.0,1.0,1.0};
	int mtype=-2;
	double b[6] = { 1.0,-1.0,1.0,-1.0,0.0,0.0 };
	double x[6];
	int nrhs=1;	
	void* pt[36];
	int iparm[64];
	int maxfct,mnum,phase,error,msglvl;
	int	i;
	double	ddum;
	int idum;

	for(i=0;i&amp;lt;64;i++){ iparm&lt;I&gt;=0; }
	iparm[0]=1; iparm[1]=2;
	iparm[2]=mkl_get_max_threads();
	iparm[3]=0; iparm[4]=0; iparm[5]=0; iparm[6]=16; iparm[7]=2;
	iparm[8]=0; iparm[9]=13; iparm[10]=1; iparm[11]=0; iparm[12]=0;
	iparm[13]=0; iparm[14]=0; iparm[15]=0; iparm[16]=0; iparm[17]=-1;
	iparm[18]=-1; iparm[19]=0;
	maxfct=1; mnum=1; msglvl=0; error=0;
	
	for(i=0;i&amp;lt;36;i++){pt&lt;I&gt;=0;}
	
	phase=11;
	PARDISO(pt,&amp;amp;maxfct,&amp;amp;mnum,&amp;amp;mtype,&amp;amp;phase,&amp;amp;n,a,ia,ja,&amp;amp;idum,&amp;amp;nrhs,iparm,&amp;amp;msglvl,&amp;amp;ddum,&amp;amp;ddum,&amp;amp;error);
	if(error!=0){ printf("nERRORduringsymbolicfactorization:%d",error); exit(1);}
	.................[/cpp]&lt;/I&gt;&lt;/I&gt;&lt;/MKL.H&gt;&lt;/MATH.H&gt;&lt;/STDLIB.H&gt;&lt;/STDIO.H&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;DIV&gt;I copy &amp;amp; pasted the code from the mkl_manual.pdf page 3379 - 3381.&lt;/DIV&gt;
&lt;DIV&gt;The only i did to the code are changes are:&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;int n=6;&lt;BR /&gt; int ia[6]={1,4,7,10,13,14};&lt;BR /&gt; int ja[14]={1,5,6,2,5,6,3,5,6,4,5,6,5,6};&lt;BR /&gt; double a[14]={10.0,0.0,1.0,10.0,1.0,1.0,10.0,2.0,1.0,10.0,3.0,1.0,1.0,1.0};&lt;BR /&gt; double b[6] = { 1.0,-1.0,1.0,-1.0,0.0,0.0 };&lt;BR /&gt; double x[6];&lt;BR /&gt; void* pt[36];&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;for(i=0;i&amp;lt;36;i++){pt&lt;I&gt;=0;}&lt;/I&gt;&lt;/DIV&gt;</description>
      <pubDate>Mon, 23 Nov 2009 14:32:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Stuck-with-PARDISO-Solver/m-p/879707#M9391</guid>
      <dc:creator>darkfate</dc:creator>
      <dc:date>2009-11-23T14:32:02Z</dc:date>
    </item>
    <item>
      <title>Re: Stuck with PARDISO Solver</title>
      <link>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Stuck-with-PARDISO-Solver/m-p/879708#M9392</link>
      <description>&lt;DIV style="margin:0px;"&gt;
&lt;DIV id="quote_reply" style="margin-top: 5px; width: 100%;"&gt;
&lt;DIV style="margin-left:2px;margin-right:2px;"&gt;Quoting - &lt;A href="https://community.intel.com/en-us/profile/437078"&gt;darkfate&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="background-color:#E5E5E5; padding:5px;border: 1px; border-style: inset;margin-left:2px;margin-right:2px;"&gt;&lt;EM&gt;
&lt;DIV&gt;Can anyone please help me to find that problem.. i need the solver for my bachelor theisis but my c skills seem to be not good enough. thank you&lt;BR /&gt;&lt;BR /&gt;&lt;/DIV&gt;
I get a "ERRORduringsymbolicfactorization:-7" while solving that symmetric-Matrix.&lt;BR /&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;TABLE border="1" cellspacing="0" cellpadding="0" width="200"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;First i thought it was the lower right block of zeros which makes problems, so i changed the matrix to:&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;/EM&gt;&lt;TABLE border="1" cellspacing="0" cellpadding="0" width="200"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="background-color: red;"&gt;0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;10.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;0.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;2.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;3.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;TD style="text-align: center;"&gt;1.0&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;BR /&gt;
&lt;DIV&gt;It still does not work for me. What i am doing wrong?&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;Here is my Code:&lt;/DIV&gt;
&lt;DIV&gt;
&lt;PRE&gt;[cpp]#include &lt;STDIO.H&gt;
#include &lt;STDLIB.H&gt;
#include &lt;MATH.H&gt;
#include &lt;MKL.H&gt;

extern int omp_get_max_threads();
extern int PARDISO(void*,int*,int*,int*,int*,int*, double*,int*,int*,int*,int*,int*, int*,double*,double*,int*);

int main(void)
{
	int n=6;
	int ia[6]={1,4,7,10,13,14};
	int ja[14]={1,5,6,2,5,6,3,5,6,4,5,6,5,6};
	double a[14]={10.0,0.0,1.0,10.0,1.0,1.0,10.0,2.0,1.0,10.0,3.0,1.0,1.0,1.0};
	int mtype=-2;
	double b[6] = { 1.0,-1.0,1.0,-1.0,0.0,0.0 };
	double x[6];
	int nrhs=1;	
	void* pt[36];
	int iparm[64];
	int maxfct,mnum,phase,error,msglvl;
	int	i;
	double	ddum;
	int idum;

	for(i=0;i&amp;lt;64;i++){ iparm&lt;I&gt;=0; }
	iparm[0]=1; iparm[1]=2;
	iparm[2]=mkl_get_max_threads();
	iparm[3]=0; iparm[4]=0; iparm[5]=0; iparm[6]=16; iparm[7]=2;
	iparm[8]=0; iparm[9]=13; iparm[10]=1; iparm[11]=0; iparm[12]=0;
	iparm[13]=0; iparm[14]=0; iparm[15]=0; iparm[16]=0; iparm[17]=-1;
	iparm[18]=-1; iparm[19]=0;
	maxfct=1; mnum=1; msglvl=0; error=0;
	
	for(i=0;i&amp;lt;36;i++){pt&lt;I&gt;=0;}
	
	phase=11;
	PARDISO(pt,&amp;amp;maxfct,&amp;amp;mnum,&amp;amp;mtype,&amp;amp;phase,&amp;amp;n,a,ia,ja,&amp;amp;idum,&amp;amp;nrhs,iparm,&amp;amp;msglvl,&amp;amp;ddum,&amp;amp;ddum,&amp;amp;error);
	if(error!=0){ printf("nERRORduringsymbolicfactorization:%d",error); exit(1);}
	.................[/cpp]&lt;/I&gt;&lt;/I&gt;&lt;/MKL.H&gt;&lt;/MATH.H&gt;&lt;/STDLIB.H&gt;&lt;/STDIO.H&gt;&lt;/PRE&gt;
&lt;/DIV&gt;
&lt;DIV&gt;I copy &amp;amp; pasted the code from the mkl_manual.pdf page 3379 - 3381.&lt;/DIV&gt;
&lt;DIV&gt;The only i did to the code are changes are:&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;int n=6;&lt;BR /&gt;int ia[6]={1,4,7,10,13,14};&lt;BR /&gt;int ja[14]={1,5,6,2,5,6,3,5,6,4,5,6,5,6};&lt;BR /&gt;double a[14]={10.0,0.0,1.0,10.0,1.0,1.0,10.0,2.0,1.0,10.0,3.0,1.0,1.0,1.0};&lt;BR /&gt;double b[6] = { 1.0,-1.0,1.0,-1.0,0.0,0.0 };&lt;BR /&gt;double x[6];&lt;BR /&gt;void* pt[36];&lt;BR /&gt;&lt;/DIV&gt;
&lt;DIV&gt;for(i=0;i&amp;lt;36;i++){pt&lt;I&gt;=0;}&lt;/I&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;BR /&gt;Hi!&lt;BR /&gt;It's seems to be problem in array ia cause it must be length of n+1, in your case ia[7]probably is equal {1,3,6,9,12,14,15}. Nevertheless you can use internal matrix checker in pardiso by changing iparm[26] from default number 0 on 1.&lt;BR /&gt;With best regards,&lt;BR /&gt;Alexander Kalinkin</description>
      <pubDate>Tue, 01 Dec 2009 17:20:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Stuck-with-PARDISO-Solver/m-p/879708#M9392</guid>
      <dc:creator>Alexander_K_Intel2</dc:creator>
      <dc:date>2009-12-01T17:20:56Z</dc:date>
    </item>
  </channel>
</rss>

