[Pntool-developers] SF.net SVN: pntool:[203] spnbox
Brought to you by:
compaqdrew,
miordache
From: <Ste...@us...> - 2009-07-24 19:30:25
|
Revision: 203 http://pntool.svn.sourceforge.net/pntool/?rev=203&view=rev Author: StephenCamp Date: 2009-07-24 19:30:11 +0000 (Fri, 24 Jul 2009) Log Message: ----------- Changed avpr.c to print indices that start at 1 instead of 0. Corrected admcon.c; matrix DX was being built as the transpose of what it was supposed to be. Modified Paths: -------------- spnbox/admcon.c spnbox/avpr.c Modified: spnbox/admcon.c =================================================================== --- spnbox/admcon.c 2009-07-24 03:38:40 UTC (rev 202) +++ spnbox/admcon.c 2009-07-24 19:30:11 UTC (rev 203) @@ -311,8 +311,8 @@ again.*/ matrix BuildDX(admcon_p *p, admcon_r *result, matrix *Z) { - /*DX is a matrix composed of a right-to-left concatentation of submatrices: - DX = [Auc, Auo, -Auo, -Ds, d] + /*DX is a matrix composed of a right-to-left concatentation of submatrices, all transposed: + DX = [Auc, Auo, -Auo, -Ds, d]' For: Auc = Z * DI(:,Tuc) Auo = Z * DI(:,Tuo) @@ -322,7 +322,7 @@ */ /*Allocate DX.*/ matrix DX; - AllocateMatrixType(2, &DX, NumberOfRows(*Z), p->TucCount + p->TuoCount + p->TuoCount + p->ntCount + 1); + AllocateMatrixType(2, &DX, p->TucCount + p->TuoCount + p->TuoCount + p->ntCount + 1, NumberOfRows(*Z)); int i, j, k; for (i = 0; i < NumberOfRows(DX); i++) @@ -330,26 +330,26 @@ /*Fill in Auc.*/ for (j = 0; j < p->TucCount; j++) { - SetMatrixEl(&DX, i, j, MultiplyVector(Z, &p->DI, i, p->Tuc[j], 0)); + SetMatrixEl(&DX, j, i, MultiplyVector(Z, &p->DI, i, p->Tuc[j], 0)); } /*Fill in Auo and -Auo.*/ for (j = 0; j < p->TuoCount; j++) { k = MultiplyVector(Z, &p->DI, i, p->Tuo[j], 0); - SetMatrixEl(&DX, i, j + p->TucCount, k); - SetMatrixEl(&DX, i, j + p->TucCount + p->TuoCount, -k); + SetMatrixEl(&DX, j + p->TucCount, i, k); + SetMatrixEl(&DX, j + p->TucCount + p->TuoCount, i, -k); } /*Fill in -Ds.*/ for (j = 0; j < p->ntCount; j++) { k = GetMatrixEl(&p->Dm, i, p->ntr[j]) - GetMatrixEl(&p->Dp, i, p->ntr[j]); - SetMatrixEl(&DX, i, j + p->TucCount + (2 * p->TuoCount), k); - } + SetMatrixEl(&DX, j + p->TucCount + (2 * p->TuoCount), i, k); + } } /*Fill in d.*/ for (i = 0; i < p->apCount; p++) { - SetMatrixEl(&DX, p->apl[i], NumberOfColumns(DX) - 1, 1); + SetMatrixEl(&DX, NumberOfRows(DX) - 1, p->apl[i], 1); } /*Deallocate Z. It will not be needed anymore.*/ DeallocateMatrix(Z); Modified: spnbox/avpr.c =================================================================== --- spnbox/avpr.c 2009-07-24 03:38:40 UTC (rev 202) +++ spnbox/avpr.c 2009-07-24 19:30:11 UTC (rev 203) @@ -33,15 +33,15 @@ { if (vector[i] == 1) { - sprintf(element, "%s%s%d%s", chr, bl, i, el); + sprintf(element, "%s%s%d%s", chr, bl, i + 1, el); } else if (vector[i] == -1) { - sprintf(element, "-%s%s%d%s", chr, bl, i, el); + sprintf(element, "-%s%s%d%s", chr, bl, i + 1, el); } else { - sprintf(element, "%g%s%s%d%s", vector[i], chr, bl, i, el); + sprintf(element, "%g%s%s%d%s", vector[i], chr, bl, i + 1, el); } firstProcessed = 1; } @@ -49,19 +49,19 @@ { if (vector[i] == 1) { - sprintf(element, "+%s%s%d%s", chr, bl, i, el); + sprintf(element, "+%s%s%d%s", chr, bl, i + 1, el); } else if (vector[i] > 0) { - sprintf(element, "+%g%s%s%d%s", vector[i], chr, bl, i, el); + sprintf(element, "+%g%s%s%d%s", vector[i], chr, bl, i + 1, el); } else if (vector[i] == -1) { - sprintf(element, "-%s%s%d%s", chr, bl, i, el); + sprintf(element, "-%s%s%d%s", chr, bl, i + 1, el); } else { - sprintf(element, "%g%s%s%d%s", vector[i], chr, bl, i, el); + sprintf(element, "%g%s%s%d%s", vector[i], chr, bl, i + 1, el); } } strcat(destination, element); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |