小编kat*_*r75的帖子

矩阵的内存不足异常

我有这个简单代码(一个10 000*10 000矩阵)的"System.OutOfMemoryException"异常乘以它自己:

#time

#r "Microsoft.Office.Interop.Excel"
#r "FSharp.PowerPack.dll"

open System
open System.IO

open Microsoft.FSharp.Math
open System.Collections.Generic


let mutable Matrix1 = Matrix.create 10000 10000 0.

let matrix4 = Matrix1 * Matrix1
Run Code Online (Sandbox Code Playgroud)

我有以下错误:

System.OutOfMemoryException: An exception 'System.OutOfMemoryException' has been raised
   Microsoft.FSharp.Collections.Array2DModule.ZeroCreate[T](Int32 length1, Int32 length2)
   Microsoft.FSharp.Math.DoubleImpl.mulDenseMatrixDS(DenseMatrix`1 a, DenseMatrix`1 b)
   Microsoft.FSharp.Math.SpecializedGenericImpl.mulM[a](Matrix`1 a, Matrix`1 b)
   <StartupCode$FSI_0004>.$FSI_0004.main@() dans C:\Users\XXXXXXX\documents\visual studio 2010\Projects\Library1\Library1\Module1.fs:line 92
Stop due to an error
Run Code Online (Sandbox Code Playgroud)

因此我有两个问题:

  1. 我的计算机上有8 GB内存,根据我的计算,10 000*10 000矩阵应该占用381 MB [以这种方式计算:10 000 * 10 000 = 100 000 000矩阵中的整数=> 100 000 …

f# matrix out-of-memory f#-interactive

9
推荐指数
2
解决办法
1024
查看次数

如何将.fs文件编译为.exe?

我没有找到将简单文件 (.fs) 编译为 .exe 的方法。我尝试了这个例子,但它不起作用:

  1. 在文件 dolphin.fs 中:

    let longBeaked = "Delphinus capensis"
    let shortBeaked = "Delphinus delphis"
    let dolphins = [ longBeaked; shortBeaked ]
    printfn "Known Dolphins: %A" dolphins
    
    Run Code Online (Sandbox Code Playgroud)
  2. 您现在可以将此代码编译为 EXE,如下所示:

    C:\fsharp> fsc dolphins.fs
    C:\fsharp> dir dolphins.exe
    
    Run Code Online (Sandbox Code Playgroud)

但是当我这样做时,“C:\fsharp”中的“:”出现错误

compiler-construction f#

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

F# - 用于F#中的循环问题

我想写这种程序(这是一个简单的例子来解释我想做什么):

//  #r "FSharp.PowerPack.dll" 

open Microsoft.FSharp.Math

// Definition of my products

let product1 = matrix [[0.;1.;0.]]

let product2 = matrix [[1.;1.;0.]]

let product3 = matrix [[1.;1.;1.]]

// Instead of this (i have hundreds of products) : 

printfn "%A" product1

printfn "%A" product2

printfn "%A" product3

// I would like to do something like this (and it does not work):

for i = 1 to 3 do

printfn "%A" product&i
Run Code Online (Sandbox Code Playgroud)

先感谢您 !!!!!

f# function

3
推荐指数
1
解决办法
722
查看次数

单击该链接时文本区域替换链接

我想对stackoverflow上的"添加注释"效果做同样的事情.当用户点击链接(或按钮)时,我发现了很多关于如何打开文本区域的信息(但它是一个弹出窗口),但是我找不到这样做的方法:

当用户点击"通过电子邮件发送铭文"时

<div class="end-right-zone">
    <p>Inscription by e-mail</p>
</div>
Run Code Online (Sandbox Code Playgroud)

该区域被通过电子邮件注册所需的各种信息所取代:

<div class="inscription-by-email-deployed">
    <p>first name</p>
    <p>last name</p>
    <p>email</p>
</div>
Run Code Online (Sandbox Code Playgroud)

我没有开发很多示例,因为它与stackoverflow上的"添加注释"效果完全相同.先感谢您

html javascript css

0
推荐指数
1
解决办法
247
查看次数