From: Claudio G. <cla...@vi...> - 2011-04-11 20:39:08
|
Hello, I was trying to simulate a simple circuit with an EDD component, but I obtained some unexpected results: it seems that when one of the EDD currents is invalid it makes also all the other currents invalid (or something like that). Is this correct? Enclosed are the related ..sch and .dpl . Thanks, Claudio test_eq.sch : <Qucs Schematic 0.0.16> <Properties> <View=-389,321,701,1294,0.9,0,0> <Grid=10,10,1> <DataSet=test_eq.dat> <DataDisplay=test_eq.dpl> <OpenDisplay=1> <Script=test_eq.m> <RunScript=0> <showFrame=0> <FrameText0=Title> <FrameText1=Drawn By:> <FrameText2=Date:> <FrameText3=Revision:> </Properties> <Symbol> </Symbol> <Components> <Vdc V1 1 -40 650 18 -26 0 1 "Vin" 1> <R R1 1 620 650 15 -26 0 1 "1" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0> <.DC DC1 1 0 940 0 39 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0> <.SW SW1 1 180 940 0 63 0 0 "DC1" 1 "lin" 1 "Vin" 1 "0" 1 "10" 1 "41" 1> <GND * 1 270 860 0 0 0 0> <GND * 1 -40 860 0 0 0 0> <R R5 1 270 650 15 -26 0 1 "1 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0> <EDD D2 1 210 730 -569 -26 1 3 "explicit" 0 "3" 0 "0" 1 "0" 1 "V1" 1 "0" 1 "-sqrt(V1-5)" 1 "0" 1> </Components> <Wires> <-40 540 -40 620 "" 0 0 0 ""> <-40 540 150 540 "Vin" 70 510 72 ""> <150 540 150 700 "" 0 0 0 ""> <270 760 270 820 "" 0 0 0 ""> <270 820 500 820 "" 0 0 0 ""> <150 760 150 820 "" 0 0 0 ""> <150 820 210 820 "" 0 0 0 ""> <270 820 270 860 "" 0 0 0 ""> <620 680 620 820 "" 0 0 0 ""> <500 820 620 820 "" 0 0 0 ""> <-40 680 -40 860 "" 0 0 0 ""> <210 820 270 820 "" 0 0 0 ""> <210 760 210 820 "" 0 0 0 ""> <620 540 620 620 "" 0 0 0 ""> <210 540 620 540 "Vout" 510 510 261 ""> <210 540 210 700 "" 0 0 0 ""> <500 600 500 820 "" 0 0 0 ""> <270 600 500 600 "" 0 0 0 ""> <270 600 270 620 "" 0 0 0 ""> <270 680 270 700 "V3" 300 660 10 ""> </Wires> <Diagrams> </Diagrams> <Paintings> </Paintings> test_eq.dpl : <Qucs Schematic 0.0.16> <Properties> <View=-60,150,779,979,1.01206,0,0> <Grid=10,10,0> <DataSet=test_eq.dat> <DataDisplay=test_eq.sch> <OpenDisplay=1> <Script=test_eq.m> <RunScript=0> <showFrame=0> <FrameText0=Title> <FrameText1=Drawn By:> <FrameText2=Date:> <FrameText3=Revision:> </Properties> <Symbol> </Symbol> <Components> </Components> <Wires> </Wires> <Diagrams> <Rect 110 807 337 267 3 #c0c0c0 1 00 1 -1 0.5 1 1 -1 0.5 1 1 -1 0.5 1 315 0 225 "" "" ""> <"Vin.V" #0000ff 0 3 0 0 0> <"Vout.V" #ff0000 0 3 0 0 0> <"V3.V" #ff00ff 0 3 0 0 0> </Rect> <Tab 90 488 649 301 3 #c0c0c0 1 00 1 10 1 1 1 0 1 1 1 0 1 41 315 0 225 "" "" ""> <"Vin.V" #0000ff 0 3 0 0 0> <"Vout.V" #0000ff 0 3 0 0 0> <"V3.V" #0000ff 0 3 0 0 0> </Tab> </Diagrams> <Paintings> </Paintings> |
From: mike b. <mbr...@ya...> - 2011-04-12 09:59:13
|
Hello Claudio I downloaded your test schematic and ran it. The results obtained are much as one would expect. In your test network EDD I3 is a sqrt function: two things to note with this function: 1. if V1 < 5, the sqrt(V1-5) becomes a complex number, and 2. when V1=5 , sqrt(V1-5) =0 which gives a discontinuity in the partial differential of I3 as the partial differential is proportional to 1/sqrt or at sqrt=0 -> infinity, causing Qucs to fail. When using the sqrt function with EDD check to make sure over the voltage range of interest that it does not become complex or go to zero. When using V1 to V8 arguments it is normal practise to add a very small constant to make sure the sqrt never becomes zero. Run the following netlist - it demonstrates adding a constant. I hope these notes help. Best wishes. Mike # Qucs 0.0.16 /home/mike/Desktop/test.sch R:R1 gnd Vout R="1" Temp="26.85" Tc1="0.0" Tc2="0.0" Tnom="26.85" R:R5 V3 gnd R="1 Ohm" Temp="26.85" Tc1="0.0" Tc2="0.0" Tnom="26.85" .DC:DC1 Temp="26.85" reltol="0.001" abstol="1 pA" vntol="1 uV" saveOPs="no" MaxIter="150" saveAll="no" convHelper="none" Solver="CroutLU" .SW:SW1 Sim="DC1" Type="lin" Param="Vin" Start="0" Stop="10" Points="41" Vdc:V1 Vin gnd U="Vin" EDD:D2 Vin gnd Vout gnd V3 gnd I1="D2.I1" Q1="D2.Q1" I2="D2.I2" Q2="D2.Q2" I3="D2.I3" Q3="D2.Q3" Eqn:EqnD2I1 D2.I1="0" Export="no" Eqn:EqnD2Q1 D2.Q1="0" Export="no" Eqn:EqnD2I2 D2.I2="V1" Export="no" Eqn:EqnD2Q2 D2.Q2="0" Export="no" Eqn:EqnD2I3 D2.I3="-sqrt(V1+1e-20)" Export="no" Eqn:EqnD2Q3 D2.Q3="0" Export="no" Mike Brinson mbr...@ya... --- On Mon, 11/4/11, Claudio Girardi <cla...@vi...> wrote: From: Claudio Girardi <cla...@vi...> Subject: [Qucs-devel] Behaviour of EDD component ? To: quc...@li... Date: Monday, 11 April, 2011, 21:24 Hello, I was trying to simulate a simple circuit with an EDD component, but I obtained some unexpected results: it seems that when one of the EDD currents is invalid it makes also all the other currents invalid (or something like that). Is this correct? Enclosed are the related ..sch and .dpl . Thanks, Claudio test_eq.sch : <Qucs Schematic 0.0.16> <Properties> <View=-389,321,701,1294,0.9,0,0> <Grid=10,10,1> <DataSet=test_eq.dat> <DataDisplay=test_eq.dpl> <OpenDisplay=1> <Script=test_eq.m> <RunScript=0> <showFrame=0> <FrameText0=Title> <FrameText1=Drawn By:> <FrameText2=Date:> <FrameText3=Revision:> </Properties> <Symbol> </Symbol> <Components> <Vdc V1 1 -40 650 18 -26 0 1 "Vin" 1> <R R1 1 620 650 15 -26 0 1 "1" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0> <.DC DC1 1 0 940 0 39 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0> <.SW SW1 1 180 940 0 63 0 0 "DC1" 1 "lin" 1 "Vin" 1 "0" 1 "10" 1 "41" 1> <GND * 1 270 860 0 0 0 0> <GND * 1 -40 860 0 0 0 0> <R R5 1 270 650 15 -26 0 1 "1 Ohm" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0> <EDD D2 1 210 730 -569 -26 1 3 "explicit" 0 "3" 0 "0" 1 "0" 1 "V1" 1 "0" 1 "-sqrt(V1-5)" 1 "0" 1> </Components> <Wires> <-40 540 -40 620 "" 0 0 0 ""> <-40 540 150 540 "Vin" 70 510 72 ""> <150 540 150 700 "" 0 0 0 ""> <270 760 270 820 "" 0 0 0 ""> <270 820 500 820 "" 0 0 0 ""> <150 760 150 820 "" 0 0 0 ""> <150 820 210 820 "" 0 0 0 ""> <270 820 270 860 "" 0 0 0 ""> <620 680 620 820 "" 0 0 0 ""> <500 820 620 820 "" 0 0 0 ""> <-40 680 -40 860 "" 0 0 0 ""> <210 820 270 820 "" 0 0 0 ""> <210 760 210 820 "" 0 0 0 ""> <620 540 620 620 "" 0 0 0 ""> <210 540 620 540 "Vout" 510 510 261 ""> <210 540 210 700 "" 0 0 0 ""> <500 600 500 820 "" 0 0 0 ""> <270 600 500 600 "" 0 0 0 ""> <270 600 270 620 "" 0 0 0 ""> <270 680 270 700 "V3" 300 660 10 ""> </Wires> <Diagrams> </Diagrams> <Paintings> </Paintings> test_eq.dpl : <Qucs Schematic 0.0.16> <Properties> <View=-60,150,779,979,1.01206,0,0> <Grid=10,10,0> <DataSet=test_eq.dat> <DataDisplay=test_eq.sch> <OpenDisplay=1> <Script=test_eq.m> <RunScript=0> <showFrame=0> <FrameText0=Title> <FrameText1=Drawn By:> <FrameText2=Date:> <FrameText3=Revision:> </Properties> <Symbol> </Symbol> <Components> </Components> <Wires> </Wires> <Diagrams> <Rect 110 807 337 267 3 #c0c0c0 1 00 1 -1 0.5 1 1 -1 0.5 1 1 -1 0.5 1 315 0 225 "" "" ""> <"Vin.V" #0000ff 0 3 0 0 0> <"Vout.V" #ff0000 0 3 0 0 0> <"V3.V" #ff00ff 0 3 0 0 0> </Rect> <Tab 90 488 649 301 3 #c0c0c0 1 00 1 10 1 1 1 0 1 1 1 0 1 41 315 0 225 "" "" ""> <"Vin.V" #0000ff 0 3 0 0 0> <"Vout.V" #0000ff 0 3 0 0 0> <"V3.V" #0000ff 0 3 0 0 0> </Tab> </Diagrams> <Paintings> </Paintings> ------------------------------------------------------------------------------ Forrester Wave Report - Recovery time is now measured in hours and minutes not days. Key insights are discussed in the 2010 Forrester Wave Report as part of an in-depth evaluation of disaster recovery service providers. Forrester found the best-in-class provider in terms of services and vision. Read this report now! http://p.sf.net/sfu/ibm-webcastpromo _______________________________________________ Qucs-devel mailing list Quc...@li... https://lists.sourceforge.net/lists/listinfo/qucs-devel |