# [Getdp] GetDP - diode as non-linear resistant

Ruth Vazquez Sabariego ruth.sabariego at kuleuven.be
Thu Apr 18 15:33:37 CEST 2019

```Hi Andreas,

As you have done, you must define:
- dummy regions for the diodes and include them in Diode_Cir;
- a resistance function that depends on the current {Iz}
GlobalTerm { NeverDt[ Resistance[{Iz}] * Dof{Iz} , {Iz} ]; In Diode_Cir; }
or the voltage (what you have done)
GlobalTerm { NeverDt[ Resistance[{Uz}] * Dof{Iz} , {Iz} ]; In Diode_Cir; }

I’ve done it for the case with current:
Ron = 1e-1; // small resistance (diode in state 'on')
Roff = 1e5 ; // big resistance (diode in state 'off')
Resistance[Diode_Cir] = ((\$1 >= 0)? Ron : Roff) ;

In this case, the voltage would be
UR[Diode_Cir] = Resistance[\$1] * \$1  ;

In your case, the function for the resistance should be modified.

After that you need to define the circuit with your diodes. For instance for a single bridge rectifier:

{ Name ElectricalCircuit ; Type Network ;
Case Circuit {
{ Region Input ;  Branch {700, 800} ; }
// diodes
{ Region D1 ; Branch {800, 1} ; }
{ Region D2 ; Branch {700, 1} ; }
{ Region D3 ; Branch {999, 800} ; }
{ Region D4 ; Branch {999, 700} ; }

{ Region Crec ; Branch {2, 999}; }
{ Region Rload; Branch {2, 999}; }

// FE coil on DC side
{ Region Inductor ; Branch {1, 2} ; }
}
}

Hope that helps,
Ruth

—
Prof. Ruth V. Sabariego
KU Leuven
Dept. Electrical Engineering ESAT/Electa, EnergyVille
http://www.esat.kuleuven.be/electa
http://www.energyville.be

Free software: http://gmsh.info | http://getdp.info | http://onelab.info

On 17 Apr 2019, at 09:31, A.Eckert at eunda.ch<mailto:A.Eckert at eunda.ch> wrote:

Hello everyone

I currently try enlarge the machine model to include external connections. On of the aims is to model a 3-phased diode rectifier (B6-Bridge) which uses 6 diodes to rectify the incoming waveforms.
In the example file Lib_Magnetodynamics2D_av_Cir.pro (https://gitlab.onelab.info/getdp/getdp/blob/master/templates/Lib_Magnetodynamics2D_av_Cir.pro), there's a hint/comment to use nonlinear resistors to simulate diodes.
Unfortunately I coudln't find an exact example how to implement it.

Following three lines are basically those related to the diodes out of the above example:

Diode_Cir = Region[{}] ;

GlobalTerm { NeverDt[ Dof{Uz} , {Iz} ]; In Diode_Cir; }
GlobalTerm { NeverDt[ Resistance[{Uz}] * Dof{Iz} , {Iz} ]; In Diode_Cir; }

According to my understanding, the definition of such a resistance is missing. I simplified the example to one diode.
I added the regions and allocated it to the Diode_Cir.

R_DIODE_1_A0 = Region[{1000012}];

Diode_Cir += Region[{R_DIODE_1_A0}];

In the last step, I set the dynamic resistance. In that case it's just the input voltage.

Resistance[Region[{R_DIODE_1_A0}]] = \$1

The program itself successfully finishes. But basically all values are -nan, so something runs badly wrong. When I replace \$1 in the line above, through a fix number (e.g. 10 ), the program behaves as it should.
So there's probably still a mistake in the dynamic resistance calculation.

Any help is highly appreciated. Thank you very much.

Mit freundlichen Grüssen

Andreas Eckert
Forschung und Entwicklung / Research and Development
----------------------------------------------------
e+a  Elektromaschinen und Antriebe AG
Bachstrasse 10
CH-4313 Möhlin
----------------------------------------------------
Phone +41 61 855 92 84
Fax     +41 61 855 92 99
Mail a.eckert at e-und-a.ch<mailto:a.eckert at e-und-a.ch>

http://www.e-und-a.ch<http://www.e-und-a.ch/>
----------------------------------------------------

CONFIDENTIALITY NOTICE
This communication and the information it contains is
intended for the person(s) or organisation(s) named
above and no other person(s) or organisation(s) and
may be confidential, legally privileged and protected
by law. Unauthorised use, copying or disclosure of any
of it may be unlawful. If you have received this
by email, telephone or facsimile. We will be happy to
accept a reversed charge call (call collect).
CONFIDENTIALITY NOTICE
This communication and the information it contains is intended for the person(s) or organisation(s) named above and no other person(s) or organisation(s) and may be confidential, legally privileged and protected by law.
Unauthorised use, copying or disclosure of any of it may be unlawful. If you have received this communication in error, please contact us immediately by email, telephone or facsimile. We will be happy to accept a reversed charge call (call collect)._______________________________________________
getdp mailing list
getdp at onelab.info<mailto:getdp at onelab.info>
http://onelab.info/mailman/listinfo/getdp

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://onelab.info/pipermail/getdp/attachments/20190418/324e310b/attachment.html>
```