2012-08-29 32 views
0
integg <- function(t,a,b){ 

    integrate(Vectorize(function(x){55}),lower=t-(a+b),upper=t-a) 
    } 

我有什麼,我認爲可能是一個簡單的問題。對象整體範圍

我整合了固定可以變化的範圍。

如果你認爲這恆定的作爲一個函數,它僅存在對是> = 0我不能只設置下限== 0,在x軸的值因爲可能有倍當下界是一些值> 0

它可能是最好只寫常數莫名其妙的功能。

我在第二個問題是,我想使該值55作爲一個對象(x)的其餘可包括作爲參數的函數integg()

我使用矢量化,因爲這是我知道如何整合常量的唯一方法。

+0

我不知道我明白你'在做...無論如何,爲什麼你不能只設置'lower = 0'? (或設置'B = ta')或設置'低級= ifelse(T - (A + B)<0,0,T - (A + B))'也許整個問題的一個更完整的描述將使這部分更清晰。 – Justin

+0

現在這樣做更有意義嗎? – Doug

回答

1

你描述爲什麼不完全相同。作爲參數添加xintegg功能

integg <- function(t, a, b, intval) { 
    u <- t - a 
    l <- ifelse(u - b < 0, 0, u - b) 
    integrate(Vectorize(function(foo, x) {55}), lower=l, upper=u, x=intval) 
} 

你可以只寫自己的區域計算的,如果你的集成功能始終保持恆定:

integg2 <- function(t, a, b, intval) { 
    u <- t - a 
    l <- ifelse(u - b < 0, 0, u - b) 
    intval * (u - l) 
} 
+0

這個不錯,我也有運行持續不斷的困難。如果這是因爲它是一個函數,我是一個函數。但我將常量定義爲一個對象,並將其用作積分中的第一個參數,但仍然無效。 – Doug

+0

@LucasPinto查看我的編輯。 – Justin