How to copy/paste or use script to modify array in Variable Editor?

3 visualizaciones (últimos 30 días)
I want to modify a 12x15 array in one of the Simulink reference applications. So far, the only way I can access it seems to be through the Variable Editor. (Open Model Explorer, go to Simulink Root -> FCElectricPlant -> Model Workspace, open Mot in Variable editor, and then browse to "efficiency_table")
Is there a way to copy/paste data in this table within Variable Editor?
Or is there an alternate way to get to this data where I can make modifications?
Thanks!

Respuesta aceptada

Harimurali
Harimurali el 11 de En. de 2024
Editada: Walter Roberson el 11 de En. de 2024
Hi Mark,
The variables in the model workspace can be accessed and modified using the "Simulink.ModelWorkspace" object of the model in MATLAB. Here is an example MATLAB code to do the same:
% Load the model into memory if it is not already loaded
load_system('FCElectricPlant');
% Get the variable from the model workspace
hws = get_param('FCElectricPlant', 'ModelWorkspace');
efficiency_table = hws.getVariable('efficiency_table');
% Now you can modify the efficiency_table as needed
% For example, to change the value at row 5, column 6:
efficiency_table(5, 6) = newValue;
% After modifying the efficiency_table, write it back to the model workspace
hws.assignin('efficiency_table', efficiency_table);
% Save changes to the model if necessary
save_system('FCElectricPlant');
For more information on how to interact with the model workspace using a "Simulink.ModelWorkspace" object: https://www.mathworks.com/help/releases/R2023b/simulink/slref/simulink.modelworkspace.html

Más respuestas (0)

Categorías

Más información sobre Programmatic Model Editing en Help Center y File Exchange.

Productos


Versión

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by