Skip to content

Fix JMAG analyzer's copper loss calculation method #357

@noguchi-takahiro

Description

@noguchi-takahiro

The following line in jmag_2d.py is a way of calculating copper losses from JMAG:

@property
def copper_loss(self):
copper_loss_per_phase = (
((self.current_trms / 2) ** 2 + self.current_srms ** 2) * self.R_wdg
)
copper_loss = self.m * copper_loss_per_phase
return copper_loss

This code calculate the copper loss per phase and then multiplies it by number of phase to obtain the total copper loss. Here I believe m represents the number of phase (which should be 6 in the case of the parallel winding). However, if we see the definition of m:

@property
def m(self):
m = len(self.machine_variant.coil_groups)
return m

this uses len() function to get the length of the coil group, which for example is defined as:

"coil_groups": ['b', 'a', 'b', 'a', 'b', 'a'],

In this case, m should be return as 6 which is same as the number of the phase. However, we sometimes define this dictionary as follows:

Image

I think this results in overestimate the copper loss by 24/6 = 4 times?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions