-
2 votesanswersviews
多项式系统根的同时逼近
维基百科上的article描述了如何从牛顿方法推导出Durand-Kerner根寻找方法 . 该方法很有吸引力,因为它具有良好的收敛性和简单性,正如Immo Kerner自己("translated to PL/I by R. A. Vowels")所证明的那样: Prrs: procedure (A, X, n, epsin) options (reorder); ... -
0 votesanswersviews
fsolve / fzero:找不到解决方案,看似常规
我正在尝试使用fsolve或fzero执行以下算法: K5=8.37e-2 P=1 Choose an A S2=(4*K5/A)^(2/3) S6=3*S2 S8=4*S2 SO2 = (5*P)/149 - (101*S2)/149 - (293*S6)/149 - (389*S8)/149 H2O = (40*P)/149 + (556*S2)/4... -
2 votesanswersviews
同情表达的numpy数组中某些符号的数值计算
问题 我正在使用任意MxN numpy矩阵,其中每个元素都是一个sympy表达式,可能带有不同的符号 . 出于可视化的目的,让我们使用以下矩阵 test import sympy as sp import numpy as np a,b,c=sp.symbols('a b c'); test=np.array([[a**2,a+b],[a*c+b,b/c]]); 运行时, test 将如下所示... -
1 votesanswersviews
乘坐波浪双曲线偏微分方程的数值方案,lorena barba课程,需要帮助
我是一名初学python用户,他试图了解计算机科学,我一直在学习如何使用它来研究我已经熟悉的概念/科目,例如计算流体力学和有限元分析 . 我获得了机械工程学位,所以CS背景不多 . 我正在研究Lorena Barba关于jupyter笔记本查看器,实用数值方法的系列文章,我正在寻求一些帮助,希望有人熟悉CFD和FEA的主题 . 如果你点击下面的链接并转到下面的输出行,你会发现我在下面的内容 . 对... -
1 votesanswersviews
Scipy的解决方案?
我试图在数值上解决一个非线性方程组: def func(p): x, f = p return (math.exp(-x/O)-f, L - L*((1 - math.exp(-x/O))**W) - x*math.exp(-x/O)) 我正在以下列方式使用scipy.fsolve: x, f = fsolve(func, (10, 0.2)) 我确定我... -
0 votesanswersviews
用数值方法求解两个耦合的非线性二阶差分方程
我在拉格朗日力学中遇到了以下微分方程系统 . 您能否建议一种数值方法,以及如何解决它的相关链接和参考 . 另外,Matlab或Mathematica上的实现是否更短? mx(y点)^ 2 mgcosy-Mg - (M = m)(x双点)= 0 gsiny 2(x点)(y点x(y双点)= 0 其中(x点)或(y点)= dx / dt或dy / dt,双点表示双导数wrt时间 . -
4 votesanswersviews
用R求解方程
我如何在R中以数字方式求解下列形式的方程的根: f(r)=r*c+1-B*c-exp(-M(B-r)) 其中M,B和c是已知常数 . 提前致谢 . -
1 votesanswersviews
使用牛顿法的非线性插值
给定一组数据点,我试图使用MATLAB中的牛顿方法逼近函数U(x)= 8-ax ^ b中的系数a,b . x = [150 200 300 500 1000 2000]'; y = [2 3 4 5 6 7]'; a=170; b=-0.7; iter = 0; for iter=1:5 f=8-a*x.^(b) -y; J = [-x.^b -a*b*x.^(b-1)]; %J... -
0 votesanswersviews
二分法:无法使用函数以及如何处理多个函数输入[关闭]
我有一个工作二分法但我需要在一个函数中实现它,它将采用三个参数:f使用的函数,xL是边界的左边,xR是边界的右边 . 此外,它必须能够根据x的值改变函数(例如,如果函数是f(x)) . 如果x小于或等于零,则f(x)将为x ^ 3 3x 1,如果x大于零,则f(x)将为1 sin(x) . 该函数需要输出根和执行的迭代次数 如何为f传递函数是函数参数,然后我如何找到x的值来确定使用哪个函数? 以下... -
4 votesanswersviews
比较python和matlab中的fsolve结果
我对几天前写的帖子有一个跟进问题,谢谢你以前的反馈: Finding complex roots from set of non-linear equations in python 我现在已经在python中设置了设置的非线性方程,因此fsolve将独立处理实部和虚部 . 但是,仍然存在python“fsolve”收敛到正确解决方案的问题 . 我有完全相同的输入在Matlab中使用,经过双重检查... -
0 votesanswersviews
MATLAB:如何使用fsolve与多个输入,每个输入依赖于多个参数?
我试图用4个未知数解决4个方程的以下系统,我不喜欢从vpasolve得到的数值结果,所以我读了fsolve的大量文档的一部分 . 我有以下4个方程的系统,其中的术语: T1,T2,T3,E1,E2,E3,S1,S2,S3,S4 are known 和术语 a,b,g,D are unknowns . 估计: T1, T2 and T3 are 303, 323, 343 E1, E2 and ... -
1 votesanswersviews
在矢量化代码中scipy fsolve的速度
我有一个大小(254,80)的数组,我需要使用scipy的fsolve . 我发现在向量上使用fsolve的速度比for循环中的速度快,但仅适用于长达约100个值的向量 . 在此之后,速度迅速下降并变得非常慢,有时完全停止 . 我正在循环遍历数组的一个维度并在较小的维度上使用矢量化的fsolve,但它仍然比我期望/喜欢的时间更长 . 有没有人有这方面的好工作或知道一个类似的功能,将很乐意处理更大尺... -
2 votesanswersviews
ODE系统的数值稳定性
我必须对ODE系统进行数值求解,其形式如下: du_j/dt = f_1(u_j, v_j, t) + g_1(t)v_(j-1) + h_1(t)v_(j+1), dv_j/dt = f_2(u_j, v_j, t) + g_2(t)u_(j-1) + h_2(t)u_(j+1), 其中 u_j(t) 和 v_j(t) 是复数值标量函数的时间 t , f_i 和 g_i 被赋予函数, j =... -
0 votesanswersviews
多变量微分方程的数值解
dm4(t)/ dt =γm3(t)-ρm4(t)其中γ和rho是已知的 . 如果t_0 = 0,我如何使用数值方法找到这个微分方程的一些解? -
0 votesanswersviews
解释输入p - MATLAB中的函数梯度(f,p)
我想知道函数梯度(f,p)中的输入p是多少 . 特别是,如果f是具有n个元素的向量,则它们中的每一个都是样本,并且如果采样率是sr = 0.1Hz,那么p = 1 / sr =样本时间? 感谢您的时间 . -
16 votesanswersviews
在MATLAB中计算数值导数的最佳方法是什么?
(注意:这是一个社区Wiki . ) Suppose I have a set of points xi = {x0,x1,x2,...xn} and corresponding function values fi = f(xi) = {f0,f1,f2,...,fn}, where f(x) is, in general, an unknown function. (在某些情况下,我们可能提前... -
4 votesanswersviews
Java-寻找关于计算函数的最小值/最大值或步骤间隔中的导数的建议
寻找有关数学问题的建议,这已成为Java的噩梦 . 我扫描了网络,找不到解决方案 . 我看过类似的程序,遗憾的是找不到帮助 . 问题摘要:我希望在Java中实现一个方法,它可以找到Riemann-Siegel Z(t)函数的最小值或最大值(我已经创建了计算Z(t)的代码)或者值它的衍生物 . 为了显示我想要做的事情,Z(t)从0 <t <100的图表看起来像这样 . 直接查看Wolf... -
1 votesanswersviews
C中微分方程的数值解,路径采取?
Edit 我现在正在使用odeint . 与我的暴力算法实现相比,它使用起来相当简单并且内存较少 . 在这里查看我的问题 - > http://stackoverflow.com/questions/12060111/using-odeint-function-definition 在这里 - > http://stackoverflow.com/questions/12150160/... -
0 votesanswersviews
MATLAB / OCTAVE-包含从ODE系统的数值解得到的项的被积函数的数值积分
我想在Octave(或Matlab)上计算以下积分: 但是,我没有H和K的明确表达式.H和K实际上是以下微分方程的数值解 . h,k,dh / dr和dk / dr的初始条件分别为0,1,1 / 2,0 . 我该怎么做呢?我能以某种方式直接解决它,还是我需要首先找到H和K的数值解,找到多项式逼近,然后积分?我对Matlab和数值方法都是全新的,所以描述一切的详细方法将是最受欢迎的 . -
0 votesanswersviews
计算颂歌的两个数值解的积分
我想计算一个积分,它由两个函数决定:I(T)=∫0Ti(f(t),g(t))dt其中f和g求解常微分方程,i是已知的 . 显而易见的方法是导出I的微分方程,并将其与f和g一起求解(可以这样做,但在我的情况下数值上很昂贵) . 然而,在我的情况下,f求解具有初始条件f(0)和g的方程以及具有最终条件g(T)的方程 . 我现在最好的猜测是使用标准ODE求解器在网格上求解f和g,然后使用标准方法进行数值... -
1 votesanswersviews
数值微分方程求解器算法意外地断块
我试图用八度音程求解微分方程,但是我选择的微分单元需要永远,所以我决定用C编码 . 这是算法: #include <stdio.h> double J = 5.78e-5; // (N.m)/(rad/s^2) double bo = 6.75e-4; // (N.m)/(rad/s) double ko = 5.95e-4; // (N.m)/rad double Ka = 1.4... -
0 votesanswersviews
Matlab:没有循环的1D数值偏微分方程
所以,目前我正试图找到berger方程的数值解,$ u_t u * u_x = 0 $ . 这个等式的数值解是: $ u ^ {n 1} j = u_n ^ j- \ frac {Δx} {Δt} u ^ n_j(u ^ n_j-u ^ n )$我在Matlab上编写了计算代码的代码 . 如您所见,代码中只有一个for循环 . 但是,我的u矩阵非常大,算法变慢 . 有没有办法让我根本不使用循环 .... -
1 votesanswersviews
用Python编写的数值方案中的离散误差放大
我正在使用python作为我的数值方法项目,此时我遇到的问题主要与我用python编码的方式有关 . 所以我在Python 2.7.5上编写了一个代码,用数字方法求解一个常微分方程(1D扩散方程 - 数据 - 恒定扩散系数= 1,第二个成员用于将sin(pi * x)作为解) . 基本上,数值方案将方程离散化,并且通过固定步骤 dx 分离1D点的离散化解 . 一个简单的理论研究表明,如果 dx 倾... -
0 votesanswersviews
循环 - 存储2个前一个数组以实现Leapfrog数值方案
在平流数值求解的背景下,我尝试在时间循环中实现以下递推公式: 如您所见,我需要(j-1)和previous(j)值的第二个前一个时间值来计算(j 1)时间值 . 我不知道如何实现这个递推公式 . 下面是我在python中的尝试,其中 u 表示每次迭代的值数组 T : l = 1 # Time loop for i in range(1,nt+1): ... -
6 votesanswersviews
从python中的非线性方程组中寻找复杂的根
我一直在测试一种已经在文献中发表的算法,该算法涉及在Matlab和Python中求解一组“m”非线性方程 . 这组非线性方程涉及包含复数的输入变量,因此得到的解也应该是复杂的 . 截至目前,我已经能够通过使用以下代码行在Matlab中获得相当不错的结果: lambdas0 = ones(1,m)*1e-5; options = optimset('Algorithm','levenberg-mar... -
0 votesanswersviews
如何为雅可比提供Fsolve?
pow=fsolve(@eqns,pop); 这是我用来解决2x2非线性方程组的代码,在函数eqns.m中定义 . pop是一个非常接近解决方案的2x1初始化向量 . 当我运行它时,输出说 No solution found.fsolve stopped because the relative size of the current step is less than the default ... -
1 votesanswersviews
如何才能在Matlab中求解一系列微分方程,直到解达到某个值,然后停止?
我正在使用ode23在Matlab中解决一系列的ODE,这些都是为了不同的值而“爆炸” . 我想告诉Matlab解决方程式,直到解决方案变得大于一定量(1000,比如说)然后停止,而不是说明要解决的范围,这样我就不必手动找到可解决的范围了每个等式 . 有没有办法做到这一点?我想这样做,所以我可以为每个ODE声明一系列相同的值,但每个方程只能在该范围的子集上求解 . -
0 votesanswersviews
ImportError:没有名为error的模块
在使用Python的工程中的数值方法,第2版,作者:Jaan Kiusalaas,我写了第146页的相同模块,使用二分法计算根,f(x)= 0: from math import log,ceil import error def bisection2(f,x1,x2,switch=0,tol=1.0e-9): f1 = f(x1) if f1 == 0.0: r... -
2 votesanswersviews
如何用sympy分析和数值地求解一阶线性微分方程?
如何在_609045中解决像这样的简单线性微分方程? y' + p(t)y = q(t) 我希望以两种方式解决它:如果可能的话,象征性地(分析地),如果sympy可以得出积分因子等,还可以用数字方式进行,以便可以比较两者 . 怎么能在 sympy 完成?是 sympy.mpmath.odefun 正确的地方吗? -
0 votesanswersviews
MATLAB中一种生成常微分方程数值解的有效方法
我正在尝试编写一个MATLAB程序,它允许我给它一个微分方程,然后最终产生一个数值解 . 特别是,我希望解决这个等式: 正如我所看到的,创建这样一个程序所涉及的步骤将是: 第1步:将ODE的域分离成等效长度的n个区间第2步:替换微分算子写有限差分算子 . 第3步:以某种方式使MATLAB构建一个近似于ODE的线性方程组4:用MATLAB求解线性代数方程组5:绘制结果 . 而且,在这个概念层面上,...