Skip to content

Commit 6c62f96

Browse files
committed
correct pb in block sparse matrix of size zero
1 parent 055d459 commit 6c62f96

1 file changed

Lines changed: 5 additions & 4 deletions

File tree

src/fflib/lgmat.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2591,7 +2591,7 @@ template<typename R> BlockMatrix<R>::BlockMatrix(const basicAC_F0 & args,int ii
25912591
t_Mij[i][j]=0;
25922592
}
25932593
else if ( atype<R >()->CastingFrom(rij) )
2594-
{ // frev 2007
2594+
{ // fevr 2007
25952595
e_Mij[i][j]=to<R>(c_Mij);
25962596
t_Mij[i][j]=7; // just un scalaire
25972597
}
@@ -2788,7 +2788,7 @@ template<typename R> AnyType BlockMatrix<R>::operator()(Stack s) const
27882788
Fij(i,j)=0;
27892789
Expression eij = e_Mij[i][j];
27902790
int tij=t_Mij[i][j];
2791-
if (eij)
2791+
if (eij) // warning eij == 0 is O case.
27922792
{
27932793
cnjij(i,j) = tij%2 == 0;
27942794
AnyType e=(*eij)(s);
@@ -2805,6 +2805,7 @@ template<typename R> AnyType BlockMatrix<R>::operator()(Stack s) const
28052805
ExecError(" Type sub matrix block unknown ");
28062806
}
28072807
}
2808+
else ffassert(tij==0);
28082809
}
28092810
// compute size of matrix
28102811
int err=0;
@@ -2844,7 +2845,7 @@ template<typename R> AnyType BlockMatrix<R>::operator()(Stack s) const
28442845

28452846
if (err) ExecError("Error Block Matrix, size sub matrix");
28462847
// gestion of zero block ????
2847-
2848+
/* remove for block of size 0 june 13 2025 PHT and FH
28482849
for (int j=0;j<M;++j)
28492850
{ if(verbosity>99) cout << j << " column size" << Oj(j+1) << endl;
28502851
if ( Oj(j+1) ==0) {
@@ -2859,7 +2860,7 @@ template<typename R> AnyType BlockMatrix<R>::operator()(Stack s) const
28592860
if( Oi(i+1) !=1) err++;}
28602861
}
28612862
if (err) ExecError("Error Block Matrix with 0 line or 0 colomn..");
2862-
2863+
*/
28632864
for (int i=0;i<N;++i)
28642865
Oi(i+1) += Oi(i);
28652866
for (int j=0;j<M;++j) // correct 10/01/2007 FH

0 commit comments

Comments
 (0)