__ses_path_split_v()
authoryu.dongliang <18588496441@163.com>
Mon, 23 Oct 2023 05:39:51 +0000 (13:39 +0800)
committeryu.dongliang <18588496441@163.com>
Mon, 23 Oct 2023 05:39:51 +0000 (13:39 +0800)
ses_step_va.c

index 70e6c195d50ba05fa1e276bca90a800568be2688..1905e2712de736dc073635c016018b5208496ec8 100644 (file)
@@ -91,13 +91,15 @@ static int __ses_path_split_v(ScfEfunction* f, ses_path_t* path, ScfEpin* p0, in
 
        if (SCF_EDA_NPN == c->type) {
 
-               if (SCF_EDA_NPN_B == p->id || SCF_EDA_NPN_C == p->id) {
+               if (SCF_EDA_NPN_E != p->id) {
 
-                       r  = p->sr  - (p->r  + p->dr ) - p0->sr;
-                       jr = p->jsr - (p->jr + p->jdr) - p0->jsr;
-
-                       scf_logi("c%ldp%ld-c%ldp%ld, p->sr: %lg, p->r: %lg, p->dr: %lg, p0->sr: %lg\n",
-                                       p0->cid, p0->id, p->cid, p->id, p->sr, p->r, p->dr, p0->sr);
+                       if (p != p0) {
+                               r  = p->sr  - (p->r  + p->dr ) - p0->sr;
+                               jr = p->jsr - (p->jr + p->jdr) - p0->jsr;
+                       } else {
+                               r  = 0;
+                               jr = 0;
+                       }
 
                } else if (i >= 1) {
                        p2 = path->pins->data[i - 1];
@@ -122,7 +124,7 @@ static int __ses_path_split_v(ScfEfunction* f, ses_path_t* path, ScfEpin* p0, in
        p->v  = p0->v  - v;
        p->jv = p0->jv - jv;
 
-       scf_logi("c%ldp%ld, c%ldp%ld, a: %lg, r: %lg, v: %lg\n", p0->cid, p0->id, p->cid, p->id, a, r, v);
+       scf_logd("c%ldp%ld, c%ldp%ld, a: %lg, r: %lg, v: %lg\n", p0->cid, p0->id, p->cid, p->id, a, r, v);
        return 0;
 }