From b4a2c85b544078146d48221d69b72cb18e3d1908 Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Sun, 26 Jun 2022 11:39:43 +0200 Subject: [PATCH] Asl Lundin's correction only when suitable modelparameters are given. --- src/spicelib/devices/ind/indsetup.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/spicelib/devices/ind/indsetup.c b/src/spicelib/devices/ind/indsetup.c index 7aa995915..801cd1f5f 100644 --- a/src/spicelib/devices/ind/indsetup.c +++ b/src/spicelib/devices/ind/indsetup.c @@ -71,7 +71,8 @@ INDsetup(SMPmatrix *matrix, GENmodel *inModel, CKTcircuit *ckt, int *states) } /* Lundin's geometry correction factor */ - model->INDspecInd *= Lundin(model->INDlength, model->INDcsect); + if(model->INDlengthGiven && (model->INDdiaGiven || model->INDcsectGiven)) + model->INDspecInd *= Lundin(model->INDlength, model->INDcsect); /* double kl = Lundin(model->INDlength, model->INDcsect); @@ -145,6 +146,8 @@ static double Lundin(double l, double csec) /* x = solenoid diam. / length */ double num, den, kk, x, xx, xxxx; + + if (csec < 1e-12 || l < 1e-6) { fprintf(stderr, "Warning: coil geometries too small (< 1um length dimensions),\n"); fprintf(stderr, " Lundin's correction factor will not be calculated\n");