00001 #include "stack-c.h"
00002
00003
00004
00005 extern int C2F(dgemm) __PARAMS((char *,char *,integer *,integer *,integer *,
00006 double *,double *,integer *,double *,integer *,
00007 double *,double *,integer *));
00008
00009 int intdgemm(fname)
00010 char* fname;
00011 {
00012 int lalfa,m1,n1,m,n,k;
00013 int mA,nA,lA, mB,nB,lB,m4,n4,lbeta,mC,nC,lC;
00014
00015 int minlhs=1, minrhs=5, maxlhs=1, maxrhs=5;
00016
00017 CheckRhs(minrhs,maxrhs) ;
00018 CheckLhs(minlhs,maxlhs) ;
00019
00020 GetRhsVar(1,"d", &m1,&n1,&lalfa);
00021 CheckScalar(1, m1, n1);
00022
00023 GetRhsVar(2,"d", &mA,&nA,&lA);
00024 GetRhsVar(3,"d", &mB,&nB,&lB);
00025
00026 GetRhsVar(4,"d", &m4,&n4,&lbeta);
00027 CheckScalar(4, m4, n4);
00028
00029 GetRhsVar(5,"d", &mC,&nC,&lC);
00030
00031 m=mA; n=nB;
00032 if(nA != mB || mA != mC || nB != nC ) Scierror(999,"%f: invalid matrix dims \r\n",fname);
00033
00034 k=nA;
00035 C2F(dgemm)("n","n",&m ,&n ,&k,stk(lalfa),
00036 stk(lA),&mA ,stk(lB),&mB ,stk(lbeta) ,stk(lC),&mC);
00037
00038 LhsVar(1) = 5;
00039 return(0);
00040 }
00041
00042
00043