How to convert deprecated Bertotti into Modified Bertotti parameters

The deprecated Bertotti model for the evaluation of iron losses is no longer available since Flux 2023. This How-to document presents the guidelines for converting a parameter set of that model into equivalent parameters of the improved, currently available Modified Bertotti model.

Introduction

Previous versions of Flux provided models for computation of iron losses that were labeled as “deprecated” (Bertotti and LS). In Flux 2023, these legacy models ceased to be available through the GUI and are now considered completely superseded.

The legacy models were less accurate and led to longer computation times when compared with their corresponding newer versions (available since Flux 2018). Moreover, the deprecated Bertotti model for Transient applications was not completely coherent with its Steady State AC application counterpart and suffered from a lack of accuracy in the computation of the hysteresis term under certain circumstances (differences of 2 to 4% on typical cases).

The current implementation of the Bertotti model (referred to as the “Modified” Bertotti model in Flux) overcomes these limitations and reduces the number of parameters to be identified and that the user needs to provide for the computation of iron losses.

As a reminder, the Bertotti loss density is the sum of three terms (i.e., the hysteresis, classical and excess loss terms) shown in the equation below:



In this equation, kF is the stacking factor of the lamination. The other symbols in the equation are clarified in Table 1 below. This table also brings the equivalent notation employed in the deprecated version of the model in Flux.

Table 1. Notation for the parameters of the deprecated and Modified Bertotti models in Flux.
  Deprecated Bertotti model Modified Bertotti model
Iron Losses Terms Coefficient Exponent of the magnetic flux density Exponent of the frequency Coefficient Exponent
Hysteresis kh αh βh k1 α1
Classical

σ (conductivity)

d (thickness of the electrical steel sheets)
αc

βc (only in Steady State AC)

k2 α2
Excess ke αe βe (only in Steady State AC) k3 α3

This document is dedicated to users who still have projects based on the deprecated Bertotti model and intend to convert the parameters describing their iron losses models (coefficients and exponents) to the Modified Bertotti model, while keeping similar results (except for the hysteresis term, for which the computation is more accurate with the Modified Bertotti model).

Conditions required to convert the parameters of the legacy deprecated Bertotti model to the current Modified Bertotti model

The conversion to the Modified Bertotti model is possible under assumptions that are fortunately verified in the most frequent cases of applications.

More specifically, the values of the frequency exponents β used in the deprecated Bertotti model must satisfy the following conditions:
  • βh , the frequency exponent of the hysteresis term, must be equal to 1.0. Remark that this was the default value proposed by Flux.
  • βc , the frequency exponent of the classical term (only required in Steady State AC application), must be equal to αc , the magnetic flux density exponent of the classical term.
  • βe , the frequency exponent of the excess term (only required in Steady State AC application) must be equal to αe , the magnetic flux density exponent of the excess term.

Conversion of exponents (Steady State AC and Transient Magnetic)

With the previous conditions verified, the values of the exponents αi = 1,2,3 of the current Modified Bertotti are obtained from their counterparts of the deprecated model through the following identities:

  • the exponent of the modified hysteresis term α1 is equal to αh
  • the exponent of the modified classical term α2 is equal to αc
  • the exponent of the modified excess term α3 is equal to αe

Conversion of coefficients in Steady State AC application

In the case of a Steady State AC Magnetic application, coefficients ki = 1,2,3 of the Modified Bertotti model are computed from the coefficients of the deprecated model as follows:

  • the coefficient of the modified hysteresis term k1 must be equal to kh , the corresponding coefficient of the deprecated model;
  • the coefficient of the modified classical term k2 is given by the formula: k2 = 2π2 (σ d2)/12, in which σ and d are respectively the parameters of the deprecated model corresponding to the conductivity and the thickness of the electrical steel sheets;
  • the coefficient for the modified excess term k3 must be equal to the corresponding coefficient of the deprecated model multiplied by 8.763, i.e., k3 = 8.763 ke.

Conversion of coefficients in Transient application

In the case of a Transient Magnetic application, the coefficients ki = 1,2,3 of the Modified Bertotti model are converted as follows:

  • the coefficient of the hysteresis term k1 must be equal to kh , the corresponding coefficient of the deprecated model;
  • the coefficients k2 and k3 (the coefficients of the classical and excess terms, respectively) are obtained through the following formulas:
    • k2 = g(αc) * (σ d2)/12
    • k3 = g(αe) * ke

In these expressions, σ and d are respectively the parameters of the deprecated model corresponding to the conductivity and the thickness of the electrical steel sheets. Moreover, ke is the coefficient of the excess term of the deprecated model and αc and αe are respectively the exponents for the classical and excess terms in the deprecated model. Finally, g(α)=(2π)(α-1)*4∫0π/2cosα(θ) dθ is a function depending on the exponent value α used in the deprecated model.

Being in the most common applications αc and αe respectively equal to 2.0 and 1.5 (the default values proposed by Flux), the evaluation of g(2.0) and g(1.5) lead to the well-known values of 2 and 8.763. Consequently, the formulas for coefficients k2 and k3 become:

  • k2 = 2 π2 * (σ d2/12)
  • k3 = 8.763 * ke

Evaluating the integral function g(α) in Compose

In the exceptional cases of Transient Magnetic applications in which the exponents of the classical and excess terms of the deprecated model were adjusted to non-default values (i.e., αc2.0 and αe1.5), converting the deprecated Bertotti model coefficients to the current Modified Bertotti model requires evaluating the integral function g(α) provided above.

This function may be evaluated numerically with the help of Compose. The script below contains a possible implementation for this function in OML language:

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%  G_function(alpha, n): evaluates the function g(alpha)
%%
%%  Inputs:
%%  - alpha: exponent in the deprecated Bertotti model.
%%  - n: the number of equally spaced discretization points in interval [0 pi/2].
%%
%%  Output:	
%%  - g: the conversion factor g(alpha).
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function g = G_function(alpha, n)
	
%%%%% Vector storing the integration interval [0 , pi/2 ], discretized by n points
theta = linspace(0,pi/2,n);

%%%%% Vector storing the integrand cos(theta)^alpha evaluated on the discretized integration interval 
integrand = cos(theta).^alpha;		
	
%%%%% Numerically integrates the integrand along the interval [0 pi/2]
integral  = trapz(theta,integrand);	
	
%%%%% Scales the previouly evaluated integral to obtain g(alpha)
g = (2*pi).^(alpha-1) .* 4.0 .* integral;

end

The example below uses the previous Compose function to evaluate g(α) for α = 1.5:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% Example evaluating g(1.5) with previously defined function "G_function"
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

clear;
close all;
clc;

%%%%% Exponent of the deprecated Bertotti model
Alpha = 1.5; 

%%%%% Number of discretization points in the integration interval for function g(alpha)
N = 10000;

%%%%% Evaluates the conversion factor for the exponent 
G = G_function(Alpha,N);

%%%%% Displays the result in the standard output 
OutputString = sprintf('The conversion factor for alpha = %.3f is g(%.3f) = %.3f.', Alpha, Alpha, G);
printf(OutputString);