zoukankan      html  css  js  c++  java
  • matlab secant method

    % Matlab script to illustrate the secant method
    % to solve a nonlinear equation


    % this particular script finds the square root of a number M
    % (input by the user)


    % note that the function we are trying to zero is f(x) = x^2 - M.
    % this function is hard-coded in the script.




    g=9.8065;
    k=0.00341;
    % f(x)=log(cosh(t*srt(g*k)))/k;




    format long


    % get user input
    M = input('Please enter the number whose square root you want: ')
    t0 = input('Please enter the first  of two starting guesses: ')
    t1 = input('Please enter the second of two starting guesses: ')




    % iteration counter
    k = 1
    % compute first secant iterate to enter loop
    s = (((log(cosh(t1*sqrt(g*k)))/k)-M)-((log(cosh(t0*sqrt(g*k)))/k)-M) )/(t1-t0);
    % s = ( (x1^2-M) - (x0^2-M) ) / (x1 - x0);
    t = t1 - (((log(cosh(t1*sqrt(g*k)))/k)-M))/s
    % x = x1 - (x1^2-M)/s
    disp('Hit return to continue')
    pause 


    while abs(t-t1) > eps*abs(t),
        % reset guesses
        t0 = t1;
        t1 = t;
        % increment iteration counter
        k = k + 1
        % compute and display secant iterate
        s = (((log(cosh(t1*sqrt(g*k)))/k)-M)-((log(cosh(t0*sqrt(g*k)))/k)-M) )/(t1-t0);
    %     s = ( (x1^2-M) - (x0^2-M) ) / (x1 - x0);
    %     x = x1 - (x1^2-M)/s
        t = t1 - (((log(cosh(t1*sqrt(g*k)))/k)-M))/s
        disp('Hit return to continue')
        pause 
    end
  • 相关阅读:
    线程中断总结
    线程的基本协作和生产者消费者
    synchronized总结
    线程基础总结
    Java集合总结(三):堆与优先级队列
    Java集合总结(二):Map和Set
    Java集合总结(一):列表和队列
    java枚举类型总结
    java 内部类简单总结
    java Integer包装类装箱的一个细节
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4553880.html
Copyright © 2011-2022 走看看