Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

Control variables with Matlab LiveLink

Luís Felipe Prates Cattelan

Please login with a confirmed email address before reporting spam

Hello, I am currently working in a topology (2D) optimization problem, and my goal is to get the optimum distribution of a material parameter (magnetic permeability). Basically, i have a vector of permeabilities (actually it is a vector of values between 0 and 1 and a function that link each value to a permeability) and I need to generate this vector in MATLAB, simulate in COMSOL to get a integral objective function and the correspondent gradient. I am using a gradient-based algorithm for the optimization in MATLAB. I have 2 doubts: What is the best way to create and pass this vector? Ideally, I would have a vector that associates every element of the model to a value, how can I do that? One way would be generate a function (x,y)-> u that corresponds and interpolates every space location to a value, but how can i do this 2D interpolation? The other doubt is about the gradient: how to calculate the gradient of this objective in function to every value of the control vector? Do Sensitivity analysis study have a way to return this gradient vector?


0 Replies Last Post Sep 2, 2020, 2:28 p.m. EDT
COMSOL Moderator

Hello Luís Felipe Prates Cattelan

Your Discussion has gone 30 days without a reply. If you still need help with COMSOL and have an on-subscription license, please visit our Support Center for help.

If you do not hold an on-subscription license, you may find an answer in another Discussion or in the Knowledge Base.

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.