Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

Views expressed in these public forums are not endorsed by Drexel University or The Math Forum.


Math Forum » Discussions » Software » comp.soft-sys.matlab

Topic: Updating variables in declared function handles
Replies: 7   Last Post: Mar 15, 2013 9:24 AM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Steven Lord

Posts: 17,944
Registered: 12/7/04
Re: Updating variables in declared function handles
Posted: Mar 13, 2013 9:31 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply



"kees de Kapper" <kees_de_kapper@hotmail.com> wrote in message
news:khp1t7$3gv$1@newscl01ah.mathworks.com...
> Hi Folks,
> I've got trouble with updating the input data (variables) of a function
> which is part of a struct.
>
> In an matlab-file MyFunc.m I have defined the following two functions:

>> function varargout = MyFunc(varargin)
>> TmpStruct.Data = [];
>> TmpStruct.Size = @(DataDimension)GetDataSize(DataDimension,
>> TmpStruct.Data);


This makes a COPY of TmpStruct.Data.

>> function SizeOut = GetDataSize(DataDimension, Data)
>> SizeOut = size(Data, DataDimension);

>
> If I now do:

>> TmpS = MyFunc();
>> TmpS.Data = ones(20,30,40);
>> TmpS.Size(1)

> I would like to obtain the value '20', however I retrieve '0' since
> 'TmpStruct.Data' was defined empty before the function declaration. How
> could I "update" the input data/variable?


As written, you'd need to recreate the anonymous function.

http://www.mathworks.com/help/matlab/matlab_prog/anonymous-functions.html#f4-71621

"To supply different values for the coefficients, you must create a new
function handle:"

Since your next message said that you were switching your MyFunc function to
be an object instead, you could do this using dependent properties or a size
method on your object.

--
Steve Lord
slord@mathworks.com
To contact Technical Support use the Contact Us link on
http://www.mathworks.com




Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.