Philipp Buchsteiner
COMSOL Employee
Please login with a confirmed email address before reporting spam
Posted:
2 years ago
Mar 15, 2023, 7:30 a.m. EDT
Dear Thomas Clayson,
in our example of a motor parameter optimization it is shown how to maximize for both the average torque over an electrical period and to maximize the minimum torque:
https://www.comsol.com/model/parameter-optimization-of-an-electric-motor-101031
You may also find our archived webinar about multiphysics motor modelling and optimization helpful, which contains a simple approach to minimize the torque ripple:
https://www.comsol.de/events/webinar/designing-efficient-electric-motors-with-multiphysics-simulation-108381
Feel free to contact our support as well if you have any further questions.
Kind regards,
Philipp Buchsteiner
Dear Thomas Clayson,
in our example of a motor parameter optimization it is shown how to maximize for both the average torque over an electrical period and to maximize the minimum torque:
https://www.comsol.com/model/parameter-optimization-of-an-electric-motor-101031
You may also find our archived webinar about multiphysics motor modelling and optimization helpful, which contains a simple approach to minimize the torque ripple:
https://www.comsol.de/events/webinar/designing-efficient-electric-motors-with-multiphysics-simulation-108381
Feel free to contact our support as well if you have any further questions.
Kind regards,
Philipp Buchsteiner
Please login with a confirmed email address before reporting spam
Posted:
2 years ago
Mar 23, 2023, 8:55 a.m. EDT
Thanks for you repply! I'm using a auxillary sweep that rotates the rotor for one electrical period for each iteration of the topology optimization. I'm trying to defined a variable called Tav which represents the torque average, from the auxilary sweep. This variable is defined as:
Tav = sum(with(i,rmm.Tark_1),i,1,nsol)/nsol
Unfortunatly this doesn't work when I try to use this as an objective function. I have the following error:
Sensitivity analysis does not support control variables in the constraint Jacobian.
Do you know what I'm doing wrong? How can I compute the Tav with the auxilary sweep?
Thanks for you repply! I'm using a auxillary sweep that rotates the rotor for one electrical period for each iteration of the topology optimization. I'm trying to defined a variable called Tav which represents the torque average, from the auxilary sweep. This variable is defined as:
Tav = sum(with(i,rmm.Tark_1),i,1,nsol)/nsol
Unfortunatly this doesn't work when I try to use this as an objective function. I have the following error:
Sensitivity analysis does not support control variables in the constraint Jacobian.
Do you know what I'm doing wrong? How can I compute the Tav with the auxilary sweep?