MATLAB:涉及大数的计算

2024-04-30

如何在 MATLAB 中执行涉及大量数字的计算。举一个简单的例子,任意精度计算器将显示 ((1/120)^132)*(370!)/(260!) 约为 1.56,但 MATLAB 无法执行此类计算(power(120,-132)*factorial(370)/factorial(260) = NaN).

我也尝试过以下方法,但不起作用:

syms a b c d;
a=120; b=-132; c=370; d=260;
f=sym('power(a,b)*gamma(c+1)/gamma(d+1)')
double(f); % produces error that instructs use of `vpa`
vpa(f) % produces (gamma(c + 1.0)*power(a, b))/gamma(d + 1.0)

如果你只想计算一些大数的阶乘,你可以使用Java任意精度工具,如下所示:

result = java.math.BigDecimal(1);
for ix = 1:300
    result = result.multiply(java.math.BigDecimal(ix));
end
disp(result)
306057512216440636035370461297268629388588804173576999416776741259476533176716867465515291422477573349939147888701726368864263907759003154226842927906974559841225476930271954604008012215776252176854255965356903506788725264321896264299365204576448830388909753943489625436053225980776521270822437639449120128678675368305712293681943649956460498166450227716500185176546469340112226034729724066333258583506870150169794168850353752137554910289126407157154830282284937952636580145235233156936482233436799254594095276820608062232812387383880817049600000000000000000000000000000000000000000000000000000000000000000000000000

价值result在本例中是一个java对象。您可以在此处查看可用的方法:http://docs.oracle.com/javase/6/docs/api/java/math/BigDecimal.html http://docs.oracle.com/javase/6/docs/api/java/math/BigDecimal.html

我仍然不确定我是否会信任这种方法(1e6)!尽管。你必须尝试一下才能看到。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MATLAB:涉及大数的计算 的相关文章

  • 傅里叶变换定理 matlab

    我目前正在尝试理解二维傅里叶位移定理 根据我到目前为止所了解到的情况 图像空间中的平移会导致相位差异 但不会导致频率空间中的幅度差异 我试图用一个小例子来演示这一点 但它只适用于行的移位 而不适用于列的移位 这是一个小演示 我只在这里显示幅
  • 通过傅里叶空间填充进行插值

    我最近尝试在 matlab 上实现一个在傅立叶域中使用零填充的插值方法的简单示例 但我无法正常工作 我总是有一个小的频移 在傅里叶空间中几乎不可见 但它在时空上产生了巨大的误差 由于傅里叶空间中的零填充似乎是一种常见 且快速 的插值方法 因
  • python 正弦和余弦精度

    如何提高Python正弦和余弦精度 例如 我想使用以下代码 只需计算随机复向量 x 的 y cos acos x import numpy as np N 100000 x np zeros N 1j np zeros N for k in
  • 为什么matlab的mldivide比dgels好这么多?

    Solve Ax b 真正的双 A是超定的 Mx2 其中 M gt gt 2 b是MX1 我运行了大量的数据mldivide 并且结果非常好 我用 MKL 写了一个 mex 例程LAPACKE dgels但它远没有那么好 结果有大量噪音 并
  • 在 Matlab 中显示有理数

    我有两个整数 m n 它们一起形成 m n 形式的有理数 现在我只想以这种理性的形式在 Matlab 中显示它们 我可以通过这样做来做到这一点 char sym m n 所以 如果 例如m 1 n 2 Matlab将显示1 2 然而 如果m
  • 如何每次使用按钮将数据添加到 MATLAB 中的现有 XLSX 文件?

    我有一个函数可以生成一些变量 例如分数 对 错 未回答 使用按钮调用此功能 问题是如何每次将函数生成的这些值添加 附加到 XLSX 文件中 或者 如何创建 MAT 文件以便可以添加它 可能的解决方案是什么 附加到 xls 文件所涉及的挑战是
  • MATLAB 可执行文件太慢

    我使用以下命令将 MATLAB 程序转换为基于控制台的应用程序deploytool在 MATLAB 中 MATLAB m文件执行大约需要 2 秒 但在我将其转换为可执行文件并调用 exe 执行需要45秒 太长了 我想将 MATLAB 程序与
  • 平衡两轮机器人而不使其向前/向后漂移

    我正在尝试设计一个控制器来平衡 2 轮机器人 约 13 公斤 并使其能够抵抗外力 例如 如果有人踢它 它不应该掉落 也不应该无限期地向前 向后漂移 我对大多数控制技术 LQR 滑模控制 PID 等 都很有经验 但我在网上看到大多数人使用 L
  • 直方图均衡结果

    I am trying to code histogram equalization by my self but the results are different from the built in function in matlab
  • getappdata 在 MATLAB 中返回空矩阵

    我有一段代码 我在其中使用setappdata然后我使用以下方式调用数据getappdata即使它不为空 它也会返回一个空矩阵 我的一段简化代码如下 function edit1 Callback hObject eventdata han
  • 我如何编写一个名为 dedbi 的 MATLAB 函数,它将输入 xtx 作为字符串并返回另一个字符串 xtxx 作为输出。

    dedbi 反转单词 即 a 将被 z 替换 b 将被 y 替换 c 将被 x 替换 依此类推 dedbi 将对大写字母执行相同的操作 即将字符串 A 替换为 Z 将 B 替换为 Y 将 C 替换为 X 依此类推 如果我给函数这个字符串 a
  • 命令 A(~A) 在 matlab 中的真正作用是什么

    我一直在寻找找到矩阵非零最小值的最有效方法 并在论坛上找到了这个 设数据为矩阵A A A nan minNonZero min A 这是非常短且高效的 至少在代码行数方面 但我不明白当我们这样做时会发生什么 我找不到任何关于此的文档 因为它
  • Matlab的导入函数的范围是什么?

    我正在尝试将一些用 Matlab 编写的代码转换为独立的 编译的 Matlab 应用程序 然而 在出现一些奇怪的错误之后 我意识到代码大量使用了从路径中添加和删除的操作 以避免多次使用多个具有相同名称 但结果 计算不同 的函数这一事实 环顾
  • matlab中无限while嵌套在for循环中

    我想做一个while循环 嵌套在for在 Matlab 中循环以查找数据中不同对之间的距离 我的数据具有以下形式 ID lon lat time 1 33 56 40 89 803 2 32 45 41 03 803 3 35 78 39
  • 禁止 MATLAB 自动获取焦点[重复]

    这个问题在这里已经有答案了 我有以下问题 在我的 MATLAB 代码中 我使用如下语句 figure 1 更改某些数据的目标数字 问题是 在此 MATLAB 之后 系统将焦点集中在具有该图形的窗口上 当我在后台运行一个大脚本并尝试在计算机上
  • Matlab:3D 堆积条形图

    我正在尝试创建一个 3D 堆积条形图 如这个问题所示 Matlab 中的 3D 堆叠条形图 https stackoverflow com questions 13156133 3d stacked bars in matlab 5D 然而
  • 将 kinect RGB 和深度值转换为 XYZ 坐标

    我正在寻找一种简单的方法将 kinect RGB 和深度值转换为 XYZ 坐标 使用 MATLAB 我的目标是一个输入为以下内容的函数 每个点的 RGB 和深度值Kinect相机 并输出 每个点的 x y 和 z 值 RGB 深度 RGB
  • 通过 cuFFT 进行逆 FFT 缩放

    每当我使用 cuFFT 绘制程序获得的值并将结果与 Matlab 的结果进行比较时 我都会得到相同形状的图形 并且最大值和最小值位于相同的点 然而 cuFFT 得到的值比 Matlab 得到的值大得多 Matlab代码是 fs 1000 s
  • MATLAB - 通过垂直连接子矩阵重新排列矩阵

    我在执行以下任务时遇到问题 假设一个 3x6 矩阵 A 0 2787 0 2948 0 4635 0 8388 0 0627 0 0435 0 6917 0 1185 0 3660 0 1867 0 2383 0 7577 0 6179 0
  • 图像梯度角计算

    我实际上是按照论文的说明进行操作的 输入应该是二进制 边缘 图像 输出应该是一个新图像 并根据论文中的说明进行了修改 我对指令的理解是 获取边缘图像的梯度图像并对其进行修改 并使用修改后的梯度创建一个新图像 因此 在 MATLAB Open

随机推荐

  • 使用 ImageMagick 从文本生成图像?

    我正在尝试使用 ImageMagick 创建 3840 x 2160 的缩略图 我需要图像具有黑色背景和白色文本 文本应垂直和水平居中 我希望能够设置字体大小 但如果文本超出图像 则会自动减小字体大小 使其适合左侧和右侧的一定量的填充 我将
  • 通过 nginx 入口控制器进行基本身份验证

    我正在使用 nginx 入口控制器 https kubernetes github io ingress nginx deploy https kubernetes github io ingress nginx deploy 在 AWS
  • C++ win32 控制台中的颜色

    std cout lt lt blblabla done lt lt std endl 是否有可能使 done 采用另一种颜色 并且可能是大胆的 我使用的是 Windows 7 这取决于您使用的操作系统 如果您使用的是您想要的 Window
  • Aurelia:创建嵌套/多级导航菜单的简单方法

    我需要创建一个多级导航菜单 菜单的内容根据用户的不同而不同 我计划通过一个以 JSON 形式返回数据的服务来提取可包含子项数组的导航项集合 我见过的每个导航 路由示例都使用静态路由或单级菜单 我已经阅读了一些有关子路由的内容 但这似乎不是我
  • 基于我的 C# 类生成 xml 文件

    我有 xml 文件 每次都需要根据新客户的要求进行更新 大多数时候 xml 不正确是因为手动更新了 xml 文件 我正在考虑编写一个提供适当验证的程序 网络 Windows 并根据 ui 的输入 我将创建 xml 文件 下面是我的示例 xm
  • 内联网应用程序是否需要 SSL 证书

    我的应用程序将使用 MSI 安装程序部署到用户的服务器 并且期望它将作为 Intranet 应用程序在其安全网络上运行 但是 由于我在整个网站上使用 HTTPS 我想知道如何获得有效的证书 我已经使用 MakeCert 生成了一个开发版本
  • BLE 广播帧和 BLE 信标帧有区别吗

    我正在接收EVT LE ADVERTISING REPORT来自 HCI 套接字 我想区分 BLE 信标和普通 BLE 设备 解析设备名称等 我有点困惑是否所有 BLE 设备都会发出信标或者它们是不同的 如果不同 那么它们的数据包格式如何
  • 按第二个值对二维数组进行排序

    好吧 假设我有一个像 z 1 d 3 e 2 这样的数组 如何按每个组成数组的第二个元素对该数组进行排序 这样我的数组就会如下所示 z 1 e 2 d 3 arr z 1 d 3 e 2 arr sort a b a 1 lt gt b 1
  • WCF 中的实例停用是什么?

    我最近接触到这个词Instance Deactivation a 那是什么 b 我们需要这个做什么 c 它在什么情况下有用 我正在寻找一个易于理解的简单答案 如果可能的话 可以使用一些伪代码 Thanks 当调用 WCF 方法时 它会传递给
  • “此时元素 li 上不允许使用属性 aria-expanded”

    我有以下代码 从这里 https www w3 org WAI tutorials menus examples appmenu div ul li File ul li New li ul li ul div
  • useSelector 常量在调度后不更新

    这里有一个代码沙盒 https codesandbox io s competent moon 9ehen getIDs 更新cells 然后需要initializeCells 但是 此更改在分派操作后不会反映出来 尽管如此 我还是可以看到
  • Javascript正则表达式替换多个组

    我正在尝试根据这样的正则表达式替换多个匹配的组 var paramRegex s w s w s w s s i should match group1 group2 group3 var emptyParam emptyParam rep
  • 为页面上的所有 AJAX 请求添加“钩子”

    我想知道是否可以 挂钩 每个 AJAX 请求 无论是即将发送的请求 还是事件上的请求 并执行操作 此时 我假设页面上还有其他第三方脚本 其中一些可能使用 jQuery 而另一些则不使用 这可能吗 注意 接受的答案不会产生实际的响应 因为它被
  • 如何获取日期时间格式的 Win32_OperatingSystem.LastBootUpTime

    我一直在尝试使用 Win32 OperatingSystem 类 WMI 获取 LastBootUpTime HRESULT hr pEnumerator gt Next WBEM INFINITE 1 pclsObj uReturn if
  • 错误org.springframework.beans.factory.BeanCreationException:创建类路径资源中定义的名为“entityManagerFactory”的bean时出错

    我想将我的 java CRUD 应用程序与红色节点连接 但当我运行 Java 应用程序时 我总是收到此错误 我试图解决它 但我不能 这是错误 2022 05 10 11 33 43 959 INFO 12192 restartedMain
  • Knockout ObservableArray 不更新 HTML Foreach

    所以我有一个可以正常工作的 observablearray 但 UI 没有更新 我读过很多人遇到这种类型的问题 但我没有看到 所以 HTML 是 tbody tr td span class label label success Yup
  • 包含对 char(13) 不满意

    为什么不会SSMS为我处理这个脚本 DECLARE containsReturn AS CHAR 500 email protected cdn cgi l email protection email protected cdn cgi
  • 在 OSX 10.6 中以编程方式与连接的 iOS/iPod 进行交互

    我正在尝试开发一个简单的菜单栏应用程序 让我可以直观地看到所连接的 iPhone iPad 的充电状态 而无需启动 iTunes 经过长时间的搜索 我无法断定 Snow Leopard API 是否可以实现这一点 我的搜索引导我找到了一个在
  • 如何在 RHEL 上更新 git 版本?

    我刚刚在 GCP 上创建了一个新的 RHEL 虚拟机来在上面运行一些 Kubernetes 它上面没有安装任何 git I used yum包管理器在其上安装git 但它没有安装最新版本的git 当前版本 2 38 0 2022 年 10
  • MATLAB:涉及大数的计算

    如何在 MATLAB 中执行涉及大量数字的计算 举一个简单的例子 任意精度计算器将显示 1 120 132 370 260 约为 1 56 但 MATLAB 无法执行此类计算 power 120 132 factorial 370 fact