trying to call a function from a function file in a script file (2024)

62 views (last 30 days)

Show older comments

Olivia on 23 Jul 2024 at 2:58

  • Link

    Direct link to this question

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file

  • Link

    Direct link to this question

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file

Edited: Olivia on 23 Jul 2024 at 4:12

This question was flagged by Stephen23

Show flagsHide flags

  • Flagged as Not appropriate for MATLAB Answers by Stephen23 on 23 Jul 2024 at 4:29.

    OP deleted the original question.

Open in MATLAB Online

func

1 Comment

Show -1 older commentsHide -1 older comments

Stephen23 on 23 Jul 2024 at 3:37

Direct link to this comment

https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218171

  • Link

    Direct link to this comment

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218171

Edited: Stephen23 on 23 Jul 2024 at 3:57

Open in MATLAB Online

"but when I try to run this code the error says "Execution of script afunction as a function is not supported"

Get rid of all code outside of the function definition. Having code outside of the function definition makes it into a script, which will not work. You need to provide FZERO with a function handle, not run a script or call a function:

https://www.mathworks.com/help/matlab/matlab_prog/scripts-and-functions.html

Do not call your function. Provide FZERO with a function handle:

x = fzero(@afunction, [llim ulim],options);

https://www.mathworks.com/help/matlab/matlab_prog/creating-a-function-handle.html

Sign in to comment.

Sign in to answer this question.

Answers (3)

Muskan on 23 Jul 2024 at 3:12

  • Link

    Direct link to this answer

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#answer_1489081

  • Link

    Direct link to this answer

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#answer_1489081

Edited: Muskan on 23 Jul 2024 at 3:45

Open in MATLAB Online

Hi,

As per my undersatnding the issue is because you named the script "afunction"

Hence when when the script gets to this line:

func = afunction;

As a result, it tries to call "afunction" but cannot, because that is what you called your script.

The way to resolve this issue is to change the name of your script to something else.

You can refer to the following MATLAB Answer for more information: https://www.mathworks.com/matlabcentral/answers/1633265-i-have-this-error-execution-of-script-plot-as-a-function-is-not-supported-c-users-jonathan-e-le

3 Comments

Show 1 older commentHide 1 older comment

Olivia on 23 Jul 2024 at 3:14

Direct link to this comment

https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218156

  • Link

    Direct link to this comment

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218156

Edited: Olivia on 23 Jul 2024 at 3:21

i've tried renaming the function file to something else but then when I try to call afunciton it says function or variable not recognized :(

Muskan on 23 Jul 2024 at 3:17

Direct link to this comment

https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218161

  • Link

    Direct link to this comment

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218161

Is it possible for you to share the script in order to help debug?

Stephen23 on 23 Jul 2024 at 3:51

Direct link to this comment

https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218181

  • Link

    Direct link to this comment

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#comment_3218181

Open in MATLAB Online

Get rid of all code outside of the function definition! This you should save in an MFILE of the same name:

function y = afunciton(x)

y = exp(cos(x)) - x.^3 + 2*x.^2 + 5*x - 3;

end

And this is how you call it:

llim = -5;

ulim = -1;

options = optimset('Display','iter','TolX',10^-7,'Maxiter',500);

x = fzero(@afunciton, [llim ulim],options)

Func-count x f(x) Procedure 2 -1 -3.28347 initial 3 -1.08663 -3.1958 interpolation 4 -1.08663 -3.1958 bisection 5 -1.28168 -2.68766 interpolation 6 -1.28168 -2.68766 interpolation 7 -1.53453 -1.31264 interpolation 8 -1.73932 0.461266 interpolation 9 -1.68607 -0.0601463 interpolation 10 -1.69221 -0.00220062 interpolation 11 -1.69244 7.41169e-07 interpolation 12 -1.69244 7.41169e-07 interpolation Zero found in the interval [-5, -1]

x = -1.6924

Sign in to comment.

Star Strider on 23 Jul 2024 at 3:17

  • Link

    Direct link to this answer

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#answer_1489086

  • Link

    Direct link to this answer

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#answer_1489086

Open in MATLAB Online

If ‘afunction’ is tthe same as in your previous questtion, then this syntax should work —

x = linspace(-6, 0, 250);

figure

plot(x, afunction(x))

grid

trying to call a function from a function file in a script file (8)

llim = -5;

ulim = -1;

options = optimset('Display','iter','TolX',10^-7,'Maxiter',500);

func = @(x) afunction(x)

func = function_handle with value:

@(x)afunction(x)

[x] = fzero(func, [llim ulim],options);

Error using fzero (line 287)
Function values at the interval endpoints must differ in sign.

function y = afunction(x)

y = exp(cos(x) - x.^3 + 2*x.^2 + 5*x - 3);

end

The problem is that it actually must cross 0 in the chosen interval to use fzero, and it obviously does not.

.

0 Comments

Show -2 older commentsHide -2 older comments

Sign in to comment.

Walter Roberson on 23 Jul 2024 at 3:21

  • Link

    Direct link to this answer

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#answer_1489091

  • Link

    Direct link to this answer

    https://www.mathworks.com/matlabcentral/answers/2139466-trying-to-call-a-function-from-a-function-file-in-a-script-file#answer_1489091

Open in MATLAB Online

func = @afunction; %trying to make the variable func equivalent to "afunciton",

% the function I created in the afunction file but it doesn't work :(

llim = -5;

ulim = -1;

options = optimset('Display','iter','TolX',10^-7,'Maxiter',500);

[x] = fzero(func, [llim ulim],options);

However... your afunction is a script rather than a function, and for the purposes of fzero you strictly need to use a function.

My guess is that your afunction.m starts something like

clear all; clc

function z = afunction(x)

That "clear all" at the beginning of it is unnecessary, and makes the code into a script file instead of a function file.

0 Comments

Show -2 older commentsHide -2 older comments

Sign in to comment.

Sign in to answer this question.

See Also

Categories

MATLABExternal Language InterfacesOther languagesR Language

Find more on R Language in Help Center and File Exchange

Tags

  • function call

Community Treasure Hunt

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

Start Hunting!

An Error Occurred

Unable to complete the action because of changes made to the page. Reload the page to see its updated state.


trying to call a function from a function file in a script file (10)

Select a Web Site

Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .

You can also select a web site from the following list

Americas

  • América Latina (Español)
  • Canada (English)
  • United States (English)

Europe

  • Belgium (English)
  • Denmark (English)
  • Deutschland (Deutsch)
  • España (Español)
  • Finland (English)
  • France (Français)
  • Ireland (English)
  • Italia (Italiano)
  • Luxembourg (English)
  • Netherlands (English)
  • Norway (English)
  • Österreich (Deutsch)
  • Portugal (English)
  • Sweden (English)
  • Switzerland
    • Deutsch
    • English
    • Français
  • United Kingdom(English)

Asia Pacific

  • Australia (English)
  • India (English)
  • New Zealand (English)
  • 中国
  • 日本Japanese (日本語)
  • 한국Korean (한국어)

Contact your local office

trying to call a function from a function file in a script file (2024)
Top Articles
Oven Roasted Potatoes
15 Best Easy Whiskey co*cktails to Drink
Fernald Gun And Knife Show
Klustron 9
Plus Portals Stscg
What is a basic financial statement?
Cool Math Games Bucketball
Aktuelle Fahrzeuge von Autohaus Schlögl GmbH & Co. KG in Traunreut
The Murdoch succession drama kicks off this week. Here's everything you need to know
Simon Montefiore artikelen kopen? Alle artikelen online
Canvas Nthurston
St Maries Idaho Craigslist
How Much You Should Be Tipping For Beauty Services - American Beauty Institute
Pay Boot Barn Credit Card
Craigslist Southern Oregon Coast
Ratchet & Clank Future: Tools of Destruction
Is A Daytona Faster Than A Scat Pack
Viha Email Login
Gas Buddy Prices Near Me Zip Code
Del Amo Fashion Center Map
Poochies Liquor Store
Craigslist Northern Minnesota
Craigslist Brandon Vt
John Deere 44 Snowblower Parts Manual
Stephanie Bowe Downey Ca
Federal Express Drop Off Center Near Me
Rock Salt Font Free by Sideshow » Font Squirrel
Truis Bank Near Me
Newcardapply Com 21961
W B Crumel Funeral Home Obituaries
Louisville Volleyball Team Leaks
Best Restaurants In Blacksburg
Finland’s Satanic Warmaster’s Werwolf Discusses His Projects
Best Restaurant In Glendale Az
Spn-523318
Cheetah Pitbull For Sale
Wlds Obits
Discover Wisconsin Season 16
Anhedönia Last Name Origin
Gfs Ordering Online
Top 40 Minecraft mods to enhance your gaming experience
Mitchell Kronish Obituary
412Doctors
Makes A Successful Catch Maybe Crossword Clue
Sara Carter Fox News Photos
Gander Mountain Mastercard Login
60 Second Burger Run Unblocked
Strange World Showtimes Near Atlas Cinemas Great Lakes Stadium 16
Publix Store 840
Costco Gas Price Fort Lauderdale
Cataz.net Android Movies Apk
Honeybee: Classification, Morphology, Types, and Lifecycle
Latest Posts
Article information

Author: Margart Wisoky

Last Updated:

Views: 5421

Rating: 4.8 / 5 (58 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Margart Wisoky

Birthday: 1993-05-13

Address: 2113 Abernathy Knoll, New Tamerafurt, CT 66893-2169

Phone: +25815234346805

Job: Central Developer

Hobby: Machining, Pottery, Rafting, Cosplaying, Jogging, Taekwondo, Scouting

Introduction: My name is Margart Wisoky, I am a gorgeous, shiny, successful, beautiful, adventurous, excited, pleasant person who loves writing and wants to share my knowledge and understanding with you.