how can i make matlab select a value for a vector variable from a set of data

5 visualizaciones (últimos 30 días)
i am doing optimization design model that compare the fuel consumption of different diesel engines.
so, i have excel sheet contains the MCR of different diesel engines from manufactureres.
i have defined a variable MCR and i want matlab to assign a value for MCR from the values of MCR data that stored in excel sheet
i want that to be done automatically every time the optimization algorithm run a new attempt.
what is the function i should use to assign the value of MCR from the created set of data?

Respuesta aceptada

darova
darova el 19 de Feb. de 2020
Use xlsread
MCRdata = xlsread('data.xls'); % read data from excel file
MCR0 = MCRdata(5); % assign 5th value
  4 comentarios
Nourhan Elsayed
Nourhan Elsayed el 20 de Feb. de 2020
my model has the following variables
m = 3; % ''for examble'' m is the number of installed main engines per one propulsion train
j = 4 % ''for examble'' j number of modes of operation
x = sym ('x', [m j]); %x is the loading of main engine number m at j mode of operation
assume (x >= 0);
assumeAlso (x<=1);
thus, x is a symbolic matrix variable of size m x j
i have used this function to define MCR as an array of size 1x3
MCR = sym('MCR', [1 m]) % MCR of engine with index m
and the below function defines MCR data set
MCRdata = [250; 450;1500;900;2500;2000;1750]
my objective is to make the model choose a value for MCR from the MCRdata, no matter the order. Then, this value of MCR goes through a series of functions and calculations later on.
So, MCR is a symbolic variable whos value is assigned automatically from a defined MCRdata
darova
darova el 20 de Feb. de 2020
What about this trick?
MCRdata = [250; 450;1500;900;2500;2000;1750];
ix = randi(length(MCRdata),1,length(MCR));
MCR = sym( MCRdata(ix) );
[ix' MCR]

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by