Thanks. The new build allows me to instantiate the model but there is still a
numerical problem. Here's the message in the output.log file:
Error, simulation stopped at time: 3.23242e-06
Result written to file.
DASSL-- AT CURRENT T (=R1) 500 STEPS
In above message, R1 = .3232423177276E-05
DASSL-- TAKEN ON THIS CALL BEFORE REACHING TOUT
The simulation does work with Dymola using Dassl with an error tolerance of
0.0001.
Thanks.
Pranesh
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Adrian Pop
Sent: Thursday, December 11, 2008 9:46 PM
To: [email protected]
Subject: Re: Problem with OpenModelica simulation
Hi,
There is a new nightly-build available here:
http://www.ida.liu.se/~pelab/modelica/OpenModelica/OMC/nightly-builds/
which should (hopefully :) deal with your problem.
Cheers,
Adrian Pop/
Pranesh Rao wrote:
> I found the problem in my simulation. I had to add a small capacitor
> between the anode of diode D6 and ground g. The model works in Dymola
> but still not in OpenModelica because of the data structure problem
> that Adrian pointed out.
>
> Thanks.
>
> Pranesh
>
> -----Original Message----- From:
> [email protected]
> [mailto:[email protected]] On Behalf Of Pranesh
> Rao Sent: Tuesday, December 09, 2008 8:09 AM To:
> [email protected] Subject: RE: Problem with
> OpenModelica simulation
>
> Adrian,
>
> Thank you for your help. I will look at the model and see what I am
> missing - perhaps a decoupling capacitor or something.
>
> Again, thanks.
>
> Pranesh Rao
>
> -----Original Message----- From:
> [email protected]
> [mailto:[email protected]] On Behalf Of Adrian
> Pop Sent: Tuesday, December 09, 2008 5:12 AM To:
> [email protected] Subject: Re: Problem with
> OpenModelica simulation
>
>
> Hi,
>
> Some of the fixed data structures inside the simulation runtime need
> to be increased. They should actually be dynamic, but that's another
> story. I'll generate a new nightly-build in a couple of days and let
> you know when is available.
>
> The generated system of equations seems to be singular so you might
> also need to do some changes in your model. Maybe some other people
> on the list can help you with that.
>
> Cheers, Adrian Pop/
>
> Pranesh Rao wrote:
>> Hi,
>>
>>
>>
>> I am trying to simulate the following model using OpenModelica
>> 1.4.4 and the Modelica 3.0 library:
>>
>>
>>
>> model br3ph1 "three phase diode bridge feeding R-L load (source
>> inductance present)"
>>
>> constant Real PI = Modelica.Constants.pi;
>>
>> Modelica.Electrical.Analog.Sources.SineVoltage
>> src_a(V=120.0,phase=0,freqHz=60.0);
>>
>> Modelica.Electrical.Analog.Sources.SineVoltage
>> src_b(V=120.0,phase=-2*PI/3,freqHz=60.0);
>>
>> Modelica.Electrical.Analog.Sources.SineVoltage
>> src_c(V=120.0,phase=2*PI/3,freqHz=60.0);
>>
>> Modelica.Electrical.Analog.Basic.Resistor rs[3](each R=0.1) "source
>> resistance";
>>
>> Modelica.Electrical.Analog.Basic.Inductor ls[3](each L=1e-3)
>> "source inductance";
>>
>> Modelica.Electrical.Analog.Ideal.IdealDiode D1,D2,D3,D4,D5,D6;
>>
>> Modelica.Electrical.Analog.Basic.Resistor r_l(R=1) "load
>> resistance";
>>
>> Modelica.Electrical.Analog.Basic.Inductor l_l(L=0.1) "load
>> inductance";
>>
>> Modelica.Electrical.Analog.Basic.Ground g;
>>
>>
>>
>> Real v_out, i_out;
>>
>>
>>
>> equation
>>
>> connect(src_a.p,rs[1].p);
>>
>> connect(src_b.p,rs[2].p);
>>
>> connect(src_c.p,rs[3].p);
>>
>> connect(src_a.n,src_b.n);
>>
>> connect(src_b.n,src_c.n);
>>
>> connect(src_c.n,g.p);
>>
>>
>>
>> connect(rs[1].n,ls[1].p);
>>
>> connect(rs[2].n,ls[2].p);
>>
>> connect(rs[3].n,ls[3].p);
>>
>>
>>
>> connect(ls[1].n,D1.p);
>>
>> connect(D1.p,D4.n);
>>
>>
>>
>> connect(ls[2].n,D3.p);
>>
>> connect(D3.p,D6.n);
>>
>>
>>
>> connect(ls[3].n,D5.p);
>>
>> connect(D5.p,D2.n);
>>
>>
>>
>> connect(D1.n,D3.n);
>>
>> connect(D3.n,D5.n);
>>
>> connect(D5.n,r_l.p);
>>
>> connect(r_l.n,l_l.p);
>>
>> connect(l_l.n,D2.p);
>>
>> connect(D2.p,D6.p);
>>
>> connect(D6.p,D4.p);
>>
>>
>>
>> v_out = r_l.p.v - l_l.n.v;
>>
>> i_out = r_l.p.i;
>>
>> end br3ph1;
>>
>>
>>
>> When I run it using
>>
>>
>>
>> simulate(br3ph1,stopTime=1.0, numberOfIntervals=5000)
>>
>>
>>
>> I get a Simulation failed message. The output.log file contains the
>> following:
>>
>>
>>
>> Assertion failed: current_state.real_buffer_ptr +n <
>> NR_REAL_ELEMENTS, file memory_pool.c, line 99
>>
>> This application has requested the Runtime to terminate it in an
>> unusual way.
>>
>> Please contact the application's support team for more information.
>>
>>
>> I am new to Modelica so this could well be operator error. Any help
>> would be much appreciated.
>>
>>
>>
>> Regards,
>>
>>
>>
>> Pranesh Rao
>>
> _____________________________________________________________________
> Adrian Pop | Ph.D. Open Source Modelica
> Consortium | Technical Coordinator Department of Computer Science |
> http://www.ida.liu.se/~adrpo Linköping University |
> phone:+46 76 2343499/+46 13 285781 S-581 83 Linköping, Sweden |
> fax: +46 13 142231 OSMC & LiU/IDA/PELAB | office: 3B:478
>
>