Rhett1124 2021-10-08 20:58
浏览 70
已结题

R软件:怎么求分段函数的定积分

R软件:怎么求分段函数的定积分
给的题目如下:

img

数学解法:

img

现在需要用R语言求解。
首先,我尝试了直接在一个函数里用条件语句分段,再用integrate()函数求解,但是这个函数不能求分段函数的积分;
所以我就想简略一点,因为7~9正好在第二段里面,我将分段函数删到只剩第二段了,也就是一个常数,但是integrate()函数也报错了,它也不能求常数函数的积分,我彻底绝望了,就换了个思路。
接下来,我尝试了将三段函数的每一段分别创建一个函数,代码如下:

lam_1<-function(t){
  -200+400*t
}
lam_2<-function(t){
  1400
}
lam_3<-function(t){
  1400-400*(t-13)
}

然后建立一个求积分的总的大函数,代码如下:

ex<-function(a=7,b=9){
  if(b<=3){inte<-integrate(lam_1,a,b)}
  else if(b<=13){
    if(a<3){inte<-integrate(lam_1,a,3)+integrate(lam_2,3,b)}
    else(a>=3){ inte<-integrate(lam_2,a,b)}}
  else(b<=16){
    if(a<3){inte<-integrate(lam_1,a,3)+integrate(lam_2,3,13)+integrate(lam_3,13,b)}
    else if(a<13){inte<-integrate(lam_2,a,13)+integrate(lam_3,13,b)}
    else{inte<-integrate(lam_3,a,b)}}
  return(inte)
}

但是一直报错:

img

但是我的语法好像又没有什么问题,所以不知道怎么办了,想请问一下大家,我错在哪里,或者有什么办法求分段函数的定积分呢?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 10月16日
    • 创建了问题 10月8日

    悬赏问题

    • ¥20 校园二手交易小程序搭建
    • ¥15 请问在ubuntu用conda创建环境报错怎么能解决
    • ¥15 STM32CubeMX/proteus按键控制指示灯颜色切换
    • ¥20 python,计算区位熵和扩张指数
    • ¥15 Python环境配置
    • ¥15 大四学生的困惑,有偿提问!
    • ¥15 解决页面无法编入索引:被“noindex”标签排除的问题?
    • ¥15 arduino测量电阻
    • ¥15 快手uid转快手号谁能解决 需要开发
    • ¥15 iis部署Django时css不生效,来个真人,ai不好使