eval function using in load command
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
whay I'm getting this error when I use eval function to make it dynamic:
dp=500;flow='Q1',d=16/1000;try_num=1;,.....
load(eval(['D:\45deg_light_sheet_dp' num2str(dp) '_' num2str(flow) '_pipeID' num2str(d*1000) 'mm\try' num2str(try_num) '\loc_vel_ID' num2str(d*1000) 'mm_thresh' num2str(thresh_pln1) '_' num2str(flow) '_dp' num2str(dp) '_pln1_try' num2str(try_num) '_between two planes x1=' num2str(Xl_pln1) '-x2=' num2str(Xr_pln1) '_45deg_lightsheet_bin_new_name_variables.mat']));
Error: Invalid use of operator.
1 commentaire
Stephen23
le 21 Déc 2022
Why are you using EVAL()? it serves absolutely no purpose in your code.
Note that to make your code more robust, you should LOAD() into an output variable:
S = load(..);
Réponse acceptée
Steven Lord
le 21 Déc 2022
There is absolutely no need to use eval here. You're building a file name, not building code to evaluate.
dp=500;
flow='Q1';
d=16/1000;
try_num=1;
thresh_pln1 = 42; % You omitted this
Xl_pln1 = 999; % and this
Xr_pln1 = 314159; % this too
filename = ['D:\45deg_light_sheet_dp' num2str(dp) '_' num2str(flow) '_pipeID' num2str(d*1000) 'mm\try' num2str(try_num) '\loc_vel_ID' num2str(d*1000) 'mm_thresh' num2str(thresh_pln1) '_' num2str(flow) '_dp' num2str(dp) '_pln1_try' num2str(try_num) '_between two planes x1=' num2str(Xl_pln1) '-x2=' num2str(Xr_pln1) '_45deg_lightsheet_bin_new_name_variables.mat']
You could use this filename by using the functional form of load, as load(filename).
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Structures dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!