From 99a2855beb955c6da31cace9801ed304478e5a78 Mon Sep 17 00:00:00 2001 From: "yu.dongliang" <18588496441@163.com> Date: Wed, 15 Nov 2023 19:27:39 +0800 Subject: [PATCH] __ses_path_va_bridge() --- ses_step_va.c | 4 ++++ ses_step_va_bridge.c | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/ses_step_va.c b/ses_step_va.c index 6397362..4f396c9 100644 --- a/ses_step_va.c +++ b/ses_step_va.c @@ -186,6 +186,10 @@ int __ses_path_va(ScfEfunction* f, ses_path_t* path, int* changed) ses_ur_i(&p->a, &p->ja, dv, jdv, r, jr); + p2 = path->pins->data[i - 1]; + p2->a = p->a; + p2->ja = p->ja; + if (path->childs) { for (j = 0; j < path->childs->size; j++) { child = path->childs->data[j]; diff --git a/ses_step_va_bridge.c b/ses_step_va_bridge.c index e603110..e4feaf2 100644 --- a/ses_step_va_bridge.c +++ b/ses_step_va_bridge.c @@ -38,10 +38,14 @@ static int __ses_path_va_bridge(ScfEfunction* f, ses_path_t* path, int* changed) double v = p0->v - p1->v; double jv = p0->jv - p1->jv; - scf_logw("path: %d, c%ldp%ld--c%ldp%ld, v: %lg, p0->v: %lg, p1->v: %lg, n_diodes: %d\n", - path->index, p0->cid, p0->id, p1->cid, p1->id, v, p0->v, p1->v, path->n_diodes); + int ret = __ses_path_va(f, path, changed); + if (ret < 0) + return ret; - return __ses_path_va(f, path, changed); + scf_logw("path: %d, c%ldp%ld--c%ldp%ld, v: %lg, p0->v: %lg, p1->v: %lg, n_diodes: %d, p0->a: %lg, p1->a: %lg\n", + path->index, p0->cid, p0->id, p1->cid, p1->id, v, p0->v, p1->v, path->n_diodes, p0->a, p1->a); + + return 0; } static int ses_path_va_bridge(ScfEfunction* f, ses_path_t* path, int* changed) -- 2.25.1