Singular matrix warnigs when I replace single capacitor with equivalent array

I’m having issues when I try to simulate a capacitor array. “Starting Gmin stepping.
Warning: Singular matrix. Check node V1#BRANCH
Warning: Singular matrix. Check nodes N108 and N109
Added gshunt=6.50312e-12”
If I replace the capacitor array with a single equivalent cap, the simulation runs without any warnings. There are two arrays on either side of a coil. If I only use 1 capacitor array with the “other” capacitor on the other end of the coil as a single cap , the simulation runs. If I alternate which side has a single cap and which side uses the array, it runs. However, if I try to use the capacitor array on both sides of the coil at the same time, the simulation runs with warnings. I suspect there is some sort of numerical error, but I’m not sure what exactly is going on.

when the simulation runs with either C13 or C133 in place of the parallel array, the simulation runs without warnings. However, when I use the arrays instead (at the same time, in place of C13 and C133 – as captured in the image) the simulation generates the warnings.
parallel_inductors_GA_model_Forum.qsch (92.5 KB)
I appreciate the help.

First of all, you need to understand what this warning represents. In SPICE simulation, when performing a .tran analysis, it starts with a .op analysis (DC solution) to find a solution at t=0s to begin with.

There are multiple schemes in SPICE to solve the DC solution, in this sequence: Direct Newton > Adaptive Gmin Stepping > Adaptive Source Stepping > Pseudo Transient.

The warning you received indicates that Qspice cannot find a DC solution with the Direct Newton method and has to move on to Adaptive Gmin Stepping.

I suspect the challenge in your setup arises from having multiple capacitors in series with inductors, presenting a challenge in resolving the DC solution. Your circuit doesn’t pose any challenge after the DC solution is found; if it did, it would return a timestep too small error.

You can either simply ignore this warning (it warns about not having solution from Direct Newton) or add elements or options to help the circuit converge:

  1. Add .option gshunt=1p: This will add a conductance at each node to GND to aid in convergence. (generally not recommend, as it also added for transient simulation)
  2. Add .option NoOpiter: This will skip Direct Newton and immediately run with Gmin Stepping. The warning message is from Direct Newton, so the warning will not be reported.
  3. Add Rpar=1G for C1, C3, C5, C6, C7, C8, C9, C10, C11, C12: By adding a parallel resistance to these capacitors, it will help convergence in Direct Newton from my verification.
  4. Add IC=0 for LB, LC, LD, LE, LF : By adding an initial condition for inductors, it will help convergence in Direct Newton from my verification.

Above is to show you how to deal with DC solution. In short, there is nothing wrong in having Adaptive Gmin Stepping; it only represent your circuit presents a challenge in resolving its DC solution with Direct Newton.
Some people may skip the DC solution by adding UIC or SkipBP in the .tran statement, and you will not receive any warning from DC solution as it is skipped (also not recommend).

thank you for the explanation, Kevin. But, shouldn’t it also complain when there is just a single cap on each leg of the inductor for the same reasons? ie, it finds the DC solution for the “equivalent” circuit (C13 and C133 in series with LA), but not when the cap arrays replace C13 and C133. I suspected the issue was that there as no DC path to ground and I had tried 1G resistors from R1 node on the cap array side to gnd and similarly from R2 to gnd (but not from each node to ground!), to no avail. So I wasn’t sure why I was getting the warning. Thanks for you explanation!