mathematica編譯
Ⅰ Mathematica 到底有多厲害
Mathematica是一款科學計算軟體,很好地結合了數值和符號計算引擎、圖形系統、編程語言、文本系統、和與其他應用程序的高級連接。很多功能在相應領域內處於世界領先地位,它也是使用最廣泛的數學軟體之一。Mathematica的發布標志著現代科技計算的開始。Mathematica是世界上通用計算系統中最強大的系統。自從1988發布以來,它已經對如何在科技和其它領域運用計算機產生了深刻的影響。 Mathematica和MATLAB、Maple並稱為三大數學軟體。 Mathematica系統已經支持高性能計算。在Mathematica 5.2版本中,它已經支持自動多線程計算。在2002年,gridMathematica的引入使得用戶級的並行編程可以在不同的集群和多處理器系統中進行在2008年,在所有的Mathematica許可證中囊括了並行計算技術,包括支持網格技術如Windows HPC Server 2008、Microsoft Compute Cluster Server和Sun Grid。2010年,Mathematica增加了對CUDA和OpenCLGPU硬體的支持。另外,第8版還可以生成C代碼,它可以自動由系統C編譯器進行編譯,比如Intel C++編譯器或者Visual Studio 2010編譯器。
Ⅱ 請問mathematica計算結果使用texform命令後放到tex編譯器的美元符號之間為何編譯出
具體什麼結果發上來
Ⅲ 用Mathematica編寫以下兩題
Pascal語言描述,偏離題意要求 Mathematica 。
一、
看我的篩選法求素數(1500000的數據量一秒之內運算完成):
var
a,b,tt:integer;
f:array[1..100]of integer;
procere find(l,r:integer);
var
i,j:integer;
begin
for i:=2 to round(sqrt(r)) do
if not f[i] then
for j:=2 to r div i do
f[i*j]:=true;
f[1]:=true;
for i:=l to r do
if not f[i] then write(i,' ');
writeln;
end;
begin
readln(a,b);
fillchar(f,sizeof(f),false);
find(a,b);
end.
輸入「1 100」就可以了,這是我直接打的,沒有調試、編譯,樓主自己參考吧。
二、
簡單的字元串的處理,不要讓我在這里廢話了。
Ⅳ mathematica可以直接調用C語言的代碼么
可以調用C語言的方法,如下
1.用C語言寫好函數,如
double f(double x,double y){
return x*y;
}
2.找到路徑,比如C:\Program Files\Wolfram Research\Mathematica\6.0
\SystemFiles\Links\MathLink\DeveloperKit\Windows\MathLinkExamples\addtwo或相應安裝目錄下的addtwo.c以及
addtwo.tm兩個文件拷貝到某個自己的文件夾中。
3.將addtwo.c以及addtwo.tm依照用C語言寫好的函數進行修改存為f.c以及f.tm,其中本例需要修改之處
(1)addtwo.c中"extern int addtwo( int i, int j);"及以下函數addtwo代碼部分替換為函數f相應的代碼。
(2)addtwo.tm中Function、Pattern、Arguments、ArgumentTypes、ReturnType均需要按照f的定義進行修改,其中
addtwo兩個變數均是int返回值也是int而f的變數和返回值均為double,故應當將其中Integer相應改為Real
(3)如果需要用戶能在Mathematica中通過?+函數名來查詢函數功能,則需修改:Evaluate:項中相應的內容
特別注意(至少)若安裝有Visual Studio 6則不可按文檔
Tutorial/中所述的方法自行編寫f.c,那樣會導致LINK時提
示WinMain函數無定義
4.安裝負責將MathLink template文件生成C代碼的mprep.exe,做法如下
(1)進入C:\Program Files\Wolfram Research\Mathematica\6.0
\SystemFiles\Links\MathLink\DeveloperKit\Windows\CompilerAdditions\MLDev32或非默認安裝位置的相應文件夾
(2)按下Ctrl鍵,選中並拖拽Lib,Include,Bin三個文件夾進入路徑C:\Program Files\Microsoft Visual Studio\VC98
(Visual Studio 6)或C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK(Visual Studio 2005)或任何非
默認安裝路徑相應文件夾下
(3)出現提示對話框時選擇"是"或"全部"
此操作會將Mathematica的三個文件夾中的文件復制到VC同名文件夾下
4.完成後進入命令行並進入存儲f.c以及f.tm的文件夾,輸入如下語句
SET CL=/nologo /c /DWIN32 /D_WINDOWS /W3 /O2 /DNDEBUG
SET LINK=/NOLOGO /SUBSYSTEM:windows /INCREMENTAL:no /PDB:NONE kernel32.lib user32.lib gdi32.lib
MPREP f.tm -o ftm.c
CL f.c ftm.c
LINK f.obj ftm.obj ml32i3m.lib /OUT:f.exe
此操作最終將會編譯出可被Mathematica調用的MathLink程序f.exe
其中前兩句將(創建及)改變環境變數CL,LINK的值,其選項的意義詳見Mathematica文檔
tutorial/MathLinkDeveloperGuide-Windows
mprep句執行後應生成ftm.c,-o意為輸出成文件,CL句執行後將生成f.obj以及ftm.obj,LINK句將生成f.exe,其中
ml32i3m.lib為MathLink所需的庫文件,應當位於編譯器所能找到的路徑中
5.在Mathematica中安裝並調用程序。可用如下語句調入程序
link=Install["[路徑]\\f"]
其中[路徑]應用f.exe所在路徑代替。卸載程序時只需用語句
Uninstall[link]
即可