标签: exponential

如何在MATLAB中表示e ^( - t ^ 2)?

我是MATLAB的初学者,我需要代表e (-t 2).

我知道,例如,代表我使用的e xexp(x),我尝试了以下内容

1)tp = t ^ 2;/tp = t*t; X = EXP(-TP);

2)x = exp(-t ^ 2);

3)x = exp( - (t*t));

4)x = exp(-t)*exp(-t);

这样做的正确方法是什么?

matlab exp exponential

7
推荐指数
2
解决办法
16万
查看次数

尝试使用指数平滑进行预测时出现收敛警告

我使用ExponentialSmoothingfrom statsmodels( Version: 0.10.1) 对一些数据进行拟合和预测。为了在设置配置时方便使用,我编写了一个函数exp_smoothing_forecast,它接受np array数据、配置列表 ( ) 和要预测[trend, damped, seasonal, seasonal_periods, use_boxcox, remove_bias]的数量。periods

\n\n
from statsmodels.tsa.holtwinters import ExponentialSmoothing\n\ndef exp_smoothing_forecast(data, config, periods):\n    '''\n    Perform Holt Winter\xe2\x80\x99s Exponential Smoothing forecast for periods of time.\n    '''\n    t,d,s,p,b,r = config\n    # define model\n    model = ExponentialSmoothing(np.array(data), trend=t, damped=d, seasonal=s, seasonal_periods=p)\n\n    # fit model\n    model_fit = model.fit(use_boxcox=b, remove_bias=r)\n\n    # make one step forecast\n    return model_fit.forecast(periods) \n
Run Code Online (Sandbox Code Playgroud)\n\n

我使用的数据是每周的。经过一些训练后,我找到了最佳配置并尝试在整个数据上使用它们。

\n\n
data_1 = [21725.64924, 20826.08817, …
Run Code Online (Sandbox Code Playgroud)

python exponential statsmodels convergence forecast

7
推荐指数
1
解决办法
4377
查看次数

简化这种指数算法的Big-O复杂性

我有一个计数算法,我试图得到一个大致的描述.它是可怕的嵌套和可怕的指数.这里是:

 1. For each T_i in T
 2. For k = 1 to max_k
 3. For each of 2^k*(n choose k) items
 4. For each t in T_i
 5. check if the item is in t...etc.
Run Code Online (Sandbox Code Playgroud)

以下是每个运行时间的逐行概念

  1. 这是一个简单的分区,我只是给它一个常量c1.
  2. max_k是一个小数字,总是小于n,可能大约4或5.我将使用下面的k.
  3. 该循环总是运行2 ^ k*(n选择k)次
  4. 通过考虑第1行常量,我们可以推广这一行,并且知道在最坏的情况下它总是不会超过2 ^ n次,但通常会运行2 ^ n次的一小部分,所以我们将这个称为一个(2 ^ N)/ C2
  5. 这是所有这些循环中的简单if语句操作,所以c3.

将所有这些相乘得出:

c1 * k * 2^k * (n choose k) * (2^n)/c2 * c3
Run Code Online (Sandbox Code Playgroud)

因为我想要一个大O表示,忽略常量给出:

k * 2^k * (n choose k) * (2^n)
Run Code Online (Sandbox Code Playgroud)

众所周知,(n选择k)的上限为(n*e/k)^ k,因此:

O(k * 2^k …
Run Code Online (Sandbox Code Playgroud)

algorithm big-o combinatorics binomial-coefficients exponential

6
推荐指数
1
解决办法
1807
查看次数

强制指针格式的刻度LIKE MATLAB自动完成

我有两个情节.在第一个图中,y轴的值达到30000.因此,Matlab标记轴而不是'30000',其中'3'和'x10 ^ 4'在图上方.在第二个图中,y值刚好超过10000.由于该值太低而无法自动切换到指数格式,因此它确实打印了"10000".

我想知道是否有办法强制指数格式化.这将导致相同格式,因为Matlab会自动执行此操作.我问这个是因为我已经看到了解决方案,你可以将Matlab打印'10 ^ 3'直接作为Y标签,但我只想让它在标签上显示'1',在图上方显示'x10 ^ 3'.

下图显示了为了澄清我的问题而合并在一起的不同图表.在图像的左半部分,您可以看到Matlab在使用值> 10000时所执行的操作.如果下图中显示的是下半部分显示的轴格式.

指数格式与常规格式

format matlab exponential

6
推荐指数
1
解决办法
9648
查看次数

使用Esper计算指数移动平均线

寻找一种使用Esper(EPL)语句在5 EMA5和EMA20窗口上计算指数移动平均线的方法.

我有一个priceEvent(timeStamp,symbol和price)流,我在5的滑动窗口上写了一个简单的移动avrage SMA.但对Esper来说还是一个新手,正在寻找一种在滑动窗口上计算指数移动平均线(EMA)的方法.

http://www.iexplain.org/ema-how-to-calculate/

如果有人可以帮助我编写抛物线SAR功能,那将会很有帮助

esper complex-event-processing moving-average exponential

6
推荐指数
1
解决办法
1668
查看次数

指数衰减曲线拟合numpy和scipy

我在为某些数据拟合曲线方面遇到了一些麻烦,但无法解决我出错的地方.

在过去,我使用numpy.linalg.lstsq进行指数函数,使用scipy.optimize.curve_fit进行sigmoid函数.这次我希望创建一个脚本,让我指定各种函数,确定参数并测试它们与数据的拟合.在这样做时,我注意到Scipy leastsq和Numpy lstsq似乎为同一组数据和相同的功能提供了不同的答案.该函数是简单y = e^(l*x)而受到约束,使得y=1x=0.

Excel趋势线与Numpy lstsq结果一致,但由于Scipy leastsq能够执行任何功能,因此最好找出问题所在.

import scipy.optimize as optimize
import numpy as np
import matplotlib.pyplot as plt

## Sampled data
x = np.array([0, 14, 37, 975, 2013, 2095, 2147])
y = np.array([1.0, 0.764317544, 0.647136491, 0.070803763, 0.003630962,     0.001485394,     0.000495131])

# function
fp = lambda p, x: np.exp(p*x)

# error function
e = lambda p, x, y: (fp(p, x) - y)

# using scipy …
Run Code Online (Sandbox Code Playgroud)

numpy curve-fitting scipy least-squares exponential

6
推荐指数
1
解决办法
4799
查看次数

geom_smooth和指数拟合

我是R的新手,使用ggplot2绘制指数曲线时遇到一些困难。我下面有一组数据。

数据

               X        Y         x        y
1  0.6168111 37.20637 0.6168111 37.20637
2  0.5478698 24.17084 0.5478698 24.17084
3  0.6082697 26.21261 0.6082697 26.21261
4  0.6094899 26.14065 0.6094899 26.14065
5  0.6095040 38.56314 0.6095040 38.56314
6  0.6933108 36.78443 0.6933108 36.78443
7  0.5796637 27.82840 0.5796637 27.82840
8  0.4716866 30.63080 0.4716866 30.63080
9  0.5291792 29.78255 0.5291792 29.78255
10 1.2520000 33.12657 1.2520000 33.12657
11 1.2260000 31.81066 1.2260000 31.81066
12 1.2690000 59.91388 1.2690000 59.91388
13 1.2060000 49.92380 1.2060000 49.92380
14 1.0760000 29.67524 1.0760000 29.67524
15 0.9750000 27.43602 0.9750000 …
Run Code Online (Sandbox Code Playgroud)

plot r curve-fitting ggplot2 exponential

6
推荐指数
1
解决办法
2万
查看次数

Python-我应该使用什么colormap方案用于指数数据?

问题

我有一个情节,我试图使用网格化数据为世界各地的降水率趋势.我可以让情节本身很好,但颜色范围给我带来了问题.我无法弄清楚如何使色彩图更适合我的数据,这似乎是指数级的.我尝试了一个对数范围,但它并不完全适合数据.

代码和数据范围

这是我在简单的xy线图上按顺序绘制时的8,192个数据值.数据点位于x轴上,值位于y轴上. 在此输入图像描述

这是我的数据看起来像使用LogNormal颜色范围绘制的.这对我来说太薄荷绿和橘红色了.

#Set labels
lonlabels = ['0','45E','90E','135E','180','135W','90W','45W','0']
latlabels = ['90S','60S','30S','Eq.','30N','60N','90N']

#Set cmap properties
norm = colors.LogNorm() #creates logarithmic scale

#Create basemap
fig,ax = plt.subplots(figsize=(15.,10.))
m = Basemap(projection='cyl',llcrnrlat=-90,urcrnrlat=90,llcrnrlon=0,urcrnrlon=360.,lon_0=180.,resolution='c')
m.drawcoastlines(linewidth=1)
m.drawcountries(linewidth=1)
m.drawparallels(np.arange(-90,90,30.),linewidth=0.3)
m.drawmeridians(np.arange(-180.,180.,45.),linewidth=0.3)   
meshlon,meshlat = np.meshgrid(lon,lat)
x,y = m(meshlon,meshlat)

#Plot variables
trend = m.pcolormesh(x,y,lintrends[:,:,0],cmap='jet', norm=norm, shading='gouraud')

#Set plot properties
#Colorbar
cbar=m.colorbar(trend, size='8%',location='bottom',pad=0.8) #Set colorbar
cbar.set_label(label='Linear Trend (mm/day/decade)',size=25) #Set label
for t in cbar.ax.get_xticklabels():
     t.set_fontsize(25) #Set tick label sizes
#Titles & labels
fig.suptitle('Linear Trends of Precipitation (CanESM2)',fontsize=40,x=0.51,y=0.965)
ax.set_title('a) 1979-2014 …
Run Code Online (Sandbox Code Playgroud)

python matplotlib exponential colormap

6
推荐指数
1
解决办法
584
查看次数

使用双精度运算的快速SSE低精度指数

我正在寻找快速SSE低精度(~1e-3)指数函数.

我遇到了这个很好的答案:

/* max. rel. error = 3.55959567e-2 on [-87.33654, 88.72283] */
__m128 FastExpSse (__m128 x)
{
    __m128 a = _mm_set1_ps (12102203.0f); /* (1 << 23) / log(2) */
    __m128i b = _mm_set1_epi32 (127 * (1 << 23) - 298765);
    __m128i t = _mm_add_epi32 (_mm_cvtps_epi32 (_mm_mul_ps (a, x)), b);
    return _mm_castsi128_ps (t);
}
Run Code Online (Sandbox Code Playgroud)

根据Nicol N. Schraudolph的工作:NN Schraudolph."指数函数的快速,紧凑近似." Neural Computation,11(4),1999年5月,pp.853-862.

现在我需要一个"双精度"版本:__m128d FastExpSSE (__m128d x).这是因为我不控制输入和输出精度,这恰好是双精度,并且两次转换double - > float,then float - > double占用了50%的CPU资源.

需要做哪些改变?

我天真地试过这个:

__m128i double_to_uint64(__m128d x) { …
Run Code Online (Sandbox Code Playgroud)

c++ precision sse simd exponential

6
推荐指数
1
解决办法
224
查看次数

从数据点计算指数增长方程c#

我正在尝试使用 C# 应用程序分析一些数据,并且需要计算趋势线。我知道趋势线有多种类型,但现在我正在尝试计算指数增长;我将用它来预测未来的价值。我一直在研究的方程是

x(t) = x(0) * ((1+r)^t)
Run Code Online (Sandbox Code Playgroud)

这是我为尝试复制该图而编写的代码:

public void ExponentialBestFit(List<DateTime> xvalues, List<double> yvalues)

        {
            //Find the first value of y (The start value) and the first value of x (The start date)
            xzero = Convert.ToDouble(xvalues[0].ToOADate());
            yzero = yvalues[0];
            if (yzero == 0)
                yzero += 0.1;

            //For every value of x (exluding the 1st value) find the r value
            //
            //                       |   y   |          Where t = the time sinse the start time (time period)
            //Equation for r = …
Run Code Online (Sandbox Code Playgroud)

c# math visual-studio-2010 exponential

5
推荐指数
2
解决办法
4444
查看次数