__ses_path_split_i()
authoryu.dongliang <18588496441@163.com>
Fri, 6 Oct 2023 08:06:34 +0000 (16:06 +0800)
committeryu.dongliang <18588496441@163.com>
Fri, 6 Oct 2023 08:06:34 +0000 (16:06 +0800)
ses_step_va_diode.c

index 10589e4710efb5c8a3e7c85e61ba5539e1a73f2a..efd72071f30df2f198800476b01777d1a85ed5f9 100644 (file)
@@ -28,7 +28,15 @@ void __ses_path_split_i(ScfEfunction* f, ses_path_t* path, int i, int j, double
                if (cp0->lid != p0->lid || cp1->lid != p1->lid)
                        continue;
 
-               ses_split_i(&child->a, &child->ja, la, jla, child->r, child->jr, r, jr);
+               if (0 == child->n_diodes) {
+
+                       ses_ur_i(&child->a, &child->ja, v, jv, child->r, child->jr);
+
+                       if (child->a >= la)
+                               ses_split_i(&child->a, &child->ja, la, jla, child->r, child->jr, r, jr);
+
+               } else
+                       ses_split_i(&child->a, &child->ja, la, jla, child->r, child->jr, r, jr);
 
                *a  -= child->a;
                *ja -= child->ja;