ngspiceMODULE.hxx.xml, $finish and test with r2_cmc.va
This commit is contained in:
parent
64a274ac5c
commit
e6a2e3a390
|
|
@ -2623,20 +2623,28 @@ inline double _d1_pow(double x,double y) { return (x==0.0)?0.0:((log(x)/exp(0.
|
||||||
<!-- analog//callfunctions -->
|
<!-- analog//callfunctions -->
|
||||||
<admst:template match="callfunction">
|
<admst:template match="callfunction">
|
||||||
<admst:choose>
|
<admst:choose>
|
||||||
<admst:when test="function[name='\$strobe']">printf(</admst:when>
|
<admst:when test="function[name='\$finish']">
|
||||||
<admst:when test="function[name='\$warning']">_warning(</admst:when>
|
<admst:text format="_finish("/>
|
||||||
<admst:when test="function[name='\$error']">_error(</admst:when>
|
<admst:join select="function/arguments" separator=",">%(e(tree))</admst:join>
|
||||||
<admst:when test="function[name='\$finish']">_finish(</admst:when>
|
<admst:text format=");\n"/>
|
||||||
<admst:when test="function[name='\$stop']">_stop(</admst:when>
|
</admst:when>
|
||||||
<admst:otherwise>
|
<admst:otherwise>
|
||||||
<admst:fatal format="function not supported: %(function/name)\n"/>
|
<admst:choose>
|
||||||
|
<admst:when test="function[name='\$strobe']">printf(</admst:when>
|
||||||
|
<admst:when test="function[name='\$warning']">_warning(</admst:when>
|
||||||
|
<admst:when test="function[name='\$error']">_error(</admst:when>
|
||||||
|
<admst:when test="function[name='\$stop']">_stop(</admst:when>
|
||||||
|
<admst:otherwise>
|
||||||
|
<admst:fatal format="function not supported: %(function/name)\n"/>
|
||||||
|
</admst:otherwise>
|
||||||
|
</admst:choose>
|
||||||
|
<admst:join select="function/arguments" separator=",">
|
||||||
|
%(e(tree))
|
||||||
|
<admst:if test="[position(.)=1]">"\\n"</admst:if>
|
||||||
|
</admst:join>
|
||||||
|
<admst:text format="); fflush(stdout);\n"/>
|
||||||
</admst:otherwise>
|
</admst:otherwise>
|
||||||
</admst:choose>
|
</admst:choose>
|
||||||
<admst:join select="function/arguments" separator=",">
|
|
||||||
%(e(tree))
|
|
||||||
<admst:if test="[position(.)=1]">"\\n"</admst:if>
|
|
||||||
</admst:join>
|
|
||||||
<admst:text format="); fflush(stdout);\n"/>
|
|
||||||
</admst:template>
|
</admst:template>
|
||||||
|
|
||||||
<!-- analog/code -->
|
<!-- analog/code -->
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,8 @@ module r2_cmc(t, b);
|
||||||
parameter real type = 0; // 0=n, 1=p
|
parameter real type = 0; // 0=n, 1=p
|
||||||
analog begin : L
|
analog begin : L
|
||||||
real dT, rsh_t, c, r, Ir, Qc, Ceff, pwrR;
|
real dT, rsh_t, c, r, Ir, Qc, Ceff, pwrR;
|
||||||
|
if (nc > 2)
|
||||||
|
$finish(0);
|
||||||
begin : initializeModel
|
begin : initializeModel
|
||||||
dT = $temperature - `TNOM;
|
dT = $temperature - `TNOM;
|
||||||
rsh_t = rsh*(1.0+tcr*dT);
|
rsh_t = rsh*(1.0+tcr*dT);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue