# Function handle doesn't work as intended

6 views (last 30 days)

Show older comments

Karsten Gros
on 15 Jun 2017

Commented: Karsten Gros
on 28 Jun 2017

##### 2 Comments

James Tursa
on 15 Jun 2017

### Accepted Answer

Walter Roberson
on 15 Jun 2017

Q = @(r, deltaT) pi.*r.^2.*(deltaT-(2.*T_sat.*sigma)./(H_fg.*r.*rho_l)).*((1+cos(Theta)./(2.*h_i)+delta./(lamda_coat.*sin(Theta).^2)+(r.*Theta)./(4.*lamda_l.*sin(Theta)))).^(-1)

needs to be

Q = @(r, deltaT) pi.*r.^2.*(deltaT-(2.*T_sat.*sigma)./(H_fg.*r.*rho_l)).*((1+cos(Theta)./(2.*h_i(deltaT))+delta./(lamda_coat.*sin(Theta).^2)+(r.*Theta)./(4.*lamda_l.*sin(Theta)))).^(-1)

##### 4 Comments

Walter Roberson
on 17 Jun 2017

When that change is made, that error message disappears, leaving you with other error messages.

- You use delta_T twice in one of the lines, instead of deltaT
- You use r once in a line where r has not been defined; it appears that should be r_c which is used multiple times on that line
- You call upon ln() instead of log() . That is not an uncommon error -- and yet when I research I have been unable to find any major programming language that calls it ln()

Revised code attached. I have no idea if the correct value is calculated.

James Tursa
on 19 Jun 2017

Not a "major programming language", but MS Excel uses ln() for natural log.

### More Answers (2)

James Tursa
on 15 Jun 2017

Just quickly looking though what was posted, this line:

grid onq_tot2 = @(deltaT) integral(@(r) stopp(r), r_c, r_max)

looks like it should be two separate lines:

grid on

q_tot2 = @(deltaT) integral(@(r) stopp(r), r_c, r_max)

##### 0 Comments

Karsten Gros
on 19 Jun 2017

Edited: Karsten Gros
on 19 Jun 2017

##### 8 Comments

Walter Roberson
on 28 Jun 2017

No, you have not defined dT for that last line. Is there a reason you changed it from

q_tot = @(deltaT) q_tot1(deltaT)+q_tot2(deltaT);

Variable names do NOT need to match in the calling function and the called function! Variable names need to be consistent within any one function.

### See Also

### Categories

### Community Treasure Hunt

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

Start Hunting!