From: Stefan Jahn <stefan@gr...>  20071229 12:24:35

Am Sa, 29.12.2007, 13:20, schrieb Bastien ROUCARIES: Hello! >> > I'm still playing around with multivibrators in transient simulation. >> > This one is nice: attached you will find two identical schematics >> which >> > produce almost the same netlist. The only difference between the >> netlists >> > is the order of the statements. But the results of the transient >> > simulation are very different. (the first one fails after producing >> > moreorless accurate results and the other one runs thru but nothing >> > vibrates..) >> > >> > I think the problem is that in the 2nd case the evaluation order of >> the >> > nodes is different so the transistor is evaluated after the value of >> its >> > base contact has been calculated, overwriting the initial DC value I >> have >> > set using the label. Which is quite strange because I thought that my >> > label >> > would cause the initial dc analyses to charge the capacitor on this >> wire >> > so >> > the wire should stay longer on a high voltage that just for step 0. >> > >> > Whats the error in my understanding of what's going on when doing a >> > transient simulation of this circuit? >> >> This one is also known... And an ugly one, I know. >> >> Right now the position in the netlist in fact determines somehow, how >> nodes are put into the circuit matrix to be solved which in turn may >> affect the result due to numerical issues. >> >> One of the solution of this problem may be to find a way to reorder >> the matrix to be solved in a way to >> >> 1) get a deterministic ordering >> 2) and find an order which makes the matrix "easier" to solve >> >> If someone on the list has a better clue than me right now how to >> achieve (2) then please tell me. In the qucsator core there is >> already an sorting algorithm, but this just cares about pairs of >> +1 and 1 (e.g. voltage sources) and not about the actual node >> order... > > Could you please give me the equation to solve? > I suppose it is an inversion. Some of the implemented equation system solvers (e.g. LU, QR, SVD) decompose the matrix, then solve the system using additionally the righthand side... > IF so the magic key is preconditionning. I know :))) > I can try to help when I will come back form vaccation (ie 2008/01/08). If you have some preconditionknowledge I would be glad if you can share it... Cheers, Stefan. 