小编Exp*_*111的帖子

集成一个不直接按元素运算的函数

早上好/下午好/晚上好,

我正在研究一个涉及四阶张量计算体积积分的Matlab脚本.设H(r,theta,phi)是我想要整合的函数.假设不能通过对r,theta和phi的简单操作来获得H.

我的问题是在Matlab中和我知道的任何其他代码一样:

All input functions must accept arrays and operate elementwise. The function FUN(X,Y,Z)
must accept arrays X, Y, Z of the same size and return an array of corresponding values.
Run Code Online (Sandbox Code Playgroud)

这是来自Matlab 的integral3函数的实现.

如果我尝试这个简单的功能:

fun = @(X,Y,Z) X.*Y.*Z
Run Code Online (Sandbox Code Playgroud)

完全没有问题,如果我将它集成在[0,1] x [0,1] x [0,1]上,我得到了正确的结果:

integral3(fun,0,1,0,1,0,1)
Run Code Online (Sandbox Code Playgroud)

返回0.125,这是正确的.

问题在于,正如我所说,我不能用向量进行简单的计算来获得H,我不得不这样做或多或少做事:

function [result] = fun(x,y,z)
    sz = length(x);
    result  = zeros(1,sz);
    for i=1:sz
        result(i) = x(i)*y(i)*z(i);
    end
end
Run Code Online (Sandbox Code Playgroud)

这个函数独立工作,返回与我之前介绍的另一个完全相同的结果.但是,当我尝试使用integral3时,我收到此错误:

Error using integral2Calc>integral2t/tensor (line 241)
Integrand output size does not match the input …
Run Code Online (Sandbox Code Playgroud)

math matlab numerical-methods numerical-integration

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

持久身份验证状态 Firebase + Chrome 扩展

我正在尝试在我的 Chrome 扩展程序中设置身份验证。我只是希望用户能够单击扩展程序图标,使用电子邮件 + 密码登录,然后能够使用扩展程序的不同组件。如果扩展弹出窗口已关闭,则他们不必再次登录。

我一直严格遵循此处的文档,此处以及此处的 Chrome 扩展特定文档,但我的开发经验非常有限。

这是我的manifest.json.

{
  "name": "Extension",
  "version": "0.1",
  "description": "",
  "permissions": [
    "tabs",
    "activeTab",
    "storage"
  ],
  "content_security_policy": "script-src 'self' https://www.gstatic.com/ https://*.firebaseio.com https://*.firebase.com https://www.googleapis.com; object-src 'self'",
  "background": {
    "page":"background.html",
    "persistent": true
  },
  "browser_action": {
    "default_popup": "popup.html",
    "default_icon": {}
  },
  "manifest_version": 2
}

Run Code Online (Sandbox Code Playgroud)

我的background.htmlbackground.js与我上面链接的最后一个示例完全相同,当然我用我自己的配置替换了 Firebase 配置。

我的popup.html是:

<!DOCTYPE html>
<html lang="en" dir="ltr">

  <head>
    <meta charset="utf-8">
    <title></title>
    <script src="https://www.gstatic.com/firebasejs/5.10.0/firebase.js"></script>
    <script src="firebase/initialize.js" charset="utf-8"></script> …
Run Code Online (Sandbox Code Playgroud)

html javascript google-chrome-extension firebase firebase-authentication

5
推荐指数
1
解决办法
1622
查看次数