Access cell array from input in function
Afficher commentaires plus anciens
Hello,
I have a function which recieves a cell array but when I want to access it I get an error Undefined function 'atomsStuct' for input arguments of type 'logical'.(even though it exists in my Workspace and the data is okay)
In this example I want to get from my input atomsStruct only the rows in which matchingResNameCells equals 1, for example if matchingResNameCells = {1,1,0,0,1} I want to return rows 1,2,5.
Thank you in advance.
function [wantedAtoms] = atomExtractionBySpecificMaterial(atomsStruct,material)
%Output the atoms that belongs to the specified material in the input
resNameCells={atomsStruct.resName}
%Remove leading and trailing whitespace from resNameCells
newResNameCells =strtrim(resNameCells);
%Creates a Cell array that indicates what resName have the input material
matchingResNameCells = strcmp(material,newResNameCells)
%Output wanted atoms with matching material
wantedAtoms= atomsStuct(matchingResNameCells)
end
Réponses (1)
You have misspelled atomsStruct in this line:
wantedAtoms= atomsStuct(matchingResNameCells)
3 commentaires
Walter Roberson
le 7 Mar 2023
Hah, you are right!
Shany
le 8 Mar 2023
Matt J
le 8 Mar 2023
You're welcome, but please Accept-click the answer to indicate the issue is resolved.
Catégories
En savoir plus sur File Operations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!