zoukankan      html  css  js  c++  java
  • 利用matlab求解函数微分

    利用matlab解决求解函数微分

    1. 问题提出

    最近在复习高等数学,感觉可以结合 去理解他。
    遇到了一个题目:
    高数问题

    2. 具体代码

    %{
      解决函数微分问题
    %}
    clc; clear; close all;
    syms x; % be careful performance issue.
    f1 = @(x) x^3 - x;
    dfdx_syms = diff(f1,x);
    dfdx = matlabFunction(dfdx_syms);
    
    [dy,new_y]=getDy(2,1,dfdx,f1)
    change_y=getChange(2,1,f1)
    
    [dy,new_y]=getDy(2,0.1,dfdx,f1)
    change_y=getChange(2,0.1,f1)
    
    [dy,new_y]=getDy(2,0.01,dfdx,f1)
    change_y=getChange(2,0.01,f1)
    
    function [dy,new_y] = getDy(x0,dx,dydx,f)
    %myFun 求函数的微分,及函数微分近似
    %x0   某点
    %dx   自变量的变换
    %dydx 函数的导函数
    %dy 函数的微分
    %new_y 函数值的微分近似
    dy=dydx(x0)*dx;
    new_y=f(x0)+dy; 
    end
    
    function change_y = getChange (x0, change_x, f)
    %change_y 求函数变化量
    change_y = f(x0+change_x)-f(x0);
    end

    3. 测试结果

    时,结果如下表

    1 11 18
    0.1 1.1000 1.1610
    0.01 0.1100 0.1106
  • 相关阅读:
    线段树
    2016.9.4
    使用CSS代码修改博客模板
    爬虫
    PHP初学[DAY2]
    2016.8.23
    一个自动设置游戏房间的脚本
    可逆矩阵生成
    #2284. 接水果(fruit)
    #3762. 有趣的数(number)
  • 原文地址:https://www.cnblogs.com/Howbin/p/12404457.html
Copyright © 2011-2022 走看看