在 WSL2 Ubuntu20.4 系統(tǒng)中安裝 Baltamatica 顯示成功, 準(zhǔn)備運(yùn)行時(shí)出現(xiàn) Inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: _dl_call_libc_early_init: Assertion `sym != NULL' failed! 錯(cuò)誤.

請(qǐng)問(wèn)這該怎么處理?謝謝!
有沒(méi)有可以永久添加路徑的方法.
目前點(diǎn)擊設(shè)置, 添加路徑只針對(duì)當(dāng)前有效. 新寫(xiě)一個(gè)文件或者重啟軟件之后, 都需要重新添加路徑才能識(shí)別.
寫(xiě)了一個(gè)自適應(yīng) Simpson 求積公式的代碼, 運(yùn)行過(guò)程中出現(xiàn)了 abs命令或者變量的類(lèi)型發(fā)生變化導(dǎo)致,無(wú)法求值 的錯(cuò)誤, 如圖所示

我寫(xiě)的 adapsimp 的代碼如下
function [s, err] = adapsimp(func, a, b, tol) s = comsimp(func, a, b, 2); c = (a + b) / 2; s1 = comsimp(func, a, c, 2); s2 = comsimp(func, c, b, 2); s12 = s1 + s2; err = abs(s12 - s) / 15; if err < tol s = s12; else [s1, err1] = adapsimp(func, a, c, tol/2); [s2, err2] = adapsimp(func, c, b, tol/2); s = s1 + s2; err = err1 + err2; end end
里面用到了 comsimp 函數(shù), 是這樣寫(xiě)的
function s = comsimp(func, a, b, n)
h = (b - a) / n;
s0 = func(a) + func(b);
s1 = 0; % summation of f(x_{2k-1})
s2 = 0; % summation of f(x_{2k})
for k = 1:n-1
x = a + k * h;
if rem(k , 2) == 0
s2 = s2 + func(x);
else
s1 = s1 + func(x);
end
end
s = h * (s0 + 4 * s1 + 2 * s2) / 3;
end這部分代碼在 octave 上運(yùn)行是沒(méi)有問(wèn)題的

用的版本是2.2.0最新版的.
使用 disp 函數(shù)給輸出增加說(shuō)明的時(shí)候, 出現(xiàn)了順序上的錯(cuò)誤. 比如使用下面一段代碼
for n = 1:3
disp("n 的值為")
n
end正常輸出應(yīng)該是一句 "n 的值為" 和 n 的具體值交替輸出

但現(xiàn)在是先將n的值都輸出完了, 才輸出的disp語(yǔ)句里面的內(nèi)容

使用的是 Deepin 操作系統(tǒng), 版本為 2.1.1. 好像 Deepin 的安裝包還停留在 1 月份的沒(méi)更新.
對(duì)于數(shù)量級(jí)極大的一組數(shù)據(jù)
x = 0:0.1:1; y = [2, -2, -6, -42, -1806, -3.26344e+06, -1.06501e+13, -1.13424e+26, -1.28649e+52, -1.65507e+104, -2.73925e+208];
只要使用 plot(x, y) 繪制圖形, 軟件便會(huì)自動(dòng)退出. 對(duì)于其他正常的數(shù)據(jù), 繪圖時(shí)正常的.
使用的是 Deepin 操作系統(tǒng), 版本為 2.1.1.
目前 Windows 平臺(tái)下 3.0.1 版的軟件是不可以在終端下使用而只能啟動(dòng)圖形界面了嗎?
使用 mesh 函數(shù)繪制曲面圖形,報(bào)錯(cuò)提示錯(cuò)誤使用 mesh 函數(shù),Z 必須為矩陣,不能是標(biāo)量或向量。
Deepin 系統(tǒng)版本為 2.1.1 上運(yùn)行是沒(méi)有問(wèn)題的,但在 Windows 11 系統(tǒng)版本為 3.0.3 上運(yùn)行會(huì)出現(xiàn)上述錯(cuò)誤。
clear;
clc;
% 空間步長(zhǎng)
h = 0.01;
% 時(shí)間步長(zhǎng)
tau = 0.01;
x = 0:h:1;
t = 0:tau:1;
% 剖分網(wǎng)絡(luò)
[X, T] = meshgrid(x, t);
% 解析解
Ut = exp(-X+T);
% 作圖
mesh(x, t, Ut)
title("擴(kuò)散方程初邊值問(wèn)題的精確解")
xlabel("x")
ylabel("t")另外,Deepin 的版本什么時(shí)候更新,半年前反饋的 Deepin 版本上的問(wèn)題到現(xiàn)在還沒(méi)有修正。
操作系統(tǒng)為 Deepin20.9, 版本為開(kāi)發(fā)者預(yù)覽版 Baltamatica_999-3.1.3-dev1.
在終端下啟動(dòng)北太天元并使用繪圖函數(shù)會(huì)自動(dòng)退出程序,提示需要先創(chuàng)建一個(gè) QApplication 應(yīng)用。

操作系統(tǒng)為 Deepin20.9, 版本為開(kāi)發(fā)者預(yù)覽版 Baltamatica_999-3.1.3-dev1.
繪圖后點(diǎn)擊左上角導(dǎo)出圖片保存為png格式,提示導(dǎo)出圖片失敗。

使用 symbolic 插件提供的 sym 命令創(chuàng)建符號(hào)變量 x 后,工作區(qū)不顯示任何變量信息

使用 whos 命令查看發(fā)現(xiàn)只有 ans 這個(gè)變量,且類(lèi)型識(shí)別為 extern. 將這個(gè) ans 賦值給 x 之后,無(wú)論參與運(yùn)算工作區(qū)都是不顯示任何信息的,也就是工作區(qū)無(wú)法識(shí)別 extern 這種類(lèi)型的變量。

目前將所有公布過(guò)的正式版本都安裝嘗試了一遍,都是這種情況。
操作系統(tǒng)為 Deepin20.9, 安裝的版本為 baltamatica_999_3.5.0_dev0
繪制一個(gè)周期的正弦曲線(xiàn), 得到的圖如下, 坐標(biāo)軸上標(biāo)記的點(diǎn)已經(jīng)超出了圖像的大小.

操作系統(tǒng)是 Deepin V23, 輸入法使用的是 fcitx5. 從 3.5.0-dev1 開(kāi)始試驗(yàn), 到最新的 3.6.1-dev1, 使用通用版的 Linux 安裝包安裝后, 均無(wú)法在編輯器中切換中文輸入法輸入中文.
3.1.3-dev1_Deepin20.9 在 Deepin V23 上安裝能夠正常切換中英文.
軟件檢測(cè)到新版本點(diǎn)擊更新后,下載安裝包進(jìn)度條一直無(wú)反應(yīng)。而且更新至 4.0.2 后仍提示版本更新。Windows 版本。

IQA 插件默認(rèn)使用的是 qwen2.5 模型,每次重新啟動(dòng)軟件都需要重新使用 AIInit 初始化一下其他本地模型。建議增加修改默認(rèn)模型的功能。
首先生成一個(gè)測(cè)試文件,第一行類(lèi)似于表頭,2到4行每行存儲(chǔ)3個(gè)數(shù),用tab鍵分隔
fwid = fopen("test.txt", "w");
fprintf(fwid, "%s\t%s\t%s\n", "column_1", "column_1", "column_3");
fprintf(fwid, "%d\t%d\t%d\n", 1, 2, 3);
fprintf(fwid, "%d\t%d\t%d\n", 4, 5, 6);
fprintf(fwid, "%d\t%d\t%d\n", 7, 8, 9);
fclose(fwid);得到的文件共5行,第5行是一空行。下面以 fgetl 函數(shù)逐行讀取該文件。
方法一:
以 feof 函數(shù)作為 while 循環(huán)的判斷條件,依次讀取文件的每一行并顯示出來(lái)
frid = fopen("test.txt", "r");
fgetl(frid);
% 是否到達(dá)文件末尾 (EOF)
while ~feof(frid)
line = fgetl(frid);
disp(line);
end
fclose(frid);該方法在北太天元中除了顯示文件中的3行數(shù)字,還會(huì)顯示一個(gè)-1,這個(gè)-1是fgetl判斷到文件末尾后返回的。而在 MATLAB 中只顯示 3 行數(shù)字。


方法二:
考慮到方法一中 fgetl 函數(shù)返回了 -1 但 feof 條件沒(méi)有起作用,將 while 循環(huán)條件改為 true,循環(huán)內(nèi)部滿(mǎn)足 feof 條件 break 循環(huán)。
frid = fopen("test.txt", "r");
fgetl(frid);
while true
line = fgetl(frid);
% 如果到達(dá)文件末尾,則退出循環(huán)
if feof(frid)
break;
end
disp(line);
end
fclose(frid);該方法在北太天元中輸出符合預(yù)期,但在 MATLAB 中只輸出兩行數(shù)據(jù)


也就是說(shuō),在北太天元中,讀取了 7 8 9 三個(gè)數(shù)后,需要再讀取一行才到末尾 (EOF),所以讀取到的 -1 沒(méi)有 disp;而在 MATLAB 中,讀取了之后已經(jīng)到末尾,雖然讀取了這三個(gè)數(shù),就跳出循環(huán)不再顯示。代碼中的 if 判斷更換任意位置在北太天元中都將顯示 -1。
驗(yàn)證:
手動(dòng)逐行讀取文件進(jìn)行驗(yàn)證
frid = fopen("test.txt", "r");
fgetl(frid);
disp(feof(frid));
fgetl(frid);
disp(feof(frid));
fgetl(frid);
disp(feof(frid));
fgetl(frid);
disp(feof(frid));
fgetl(frid);
disp(feof(frid));
fclose(frid);在北太天元和 MATLAB 中輸出的結(jié)果分別是


測(cè)試文件共 5 行,前四行有內(nèi)容,第五行是空行,在 MATLAB 中,讀取完第四行就判斷為文件末尾,而在北太天元中,五行全部讀完才判斷是文件末尾。
有一個(gè)mat數(shù)據(jù)文件,在matlab中是能夠正常加載的

但在北太天元中,提示數(shù)據(jù)文件為空,讀取不到任何數(shù)據(jù)

無(wú)法讀取保存polyshape數(shù)據(jù)類(lèi)型的mat數(shù)據(jù)文件
t_start = datetime(2025, 5, 21, 21, 00, 00); t_end = t_start + hours(1); t_step = minutes(1); t_start:t_step:t_end
運(yùn)行報(bào)錯(cuò), 提示不支持冒號(hào)運(yùn)算符

1. 首先,針對(duì)北太天元所使用的 Python,安裝 pyttsx3 文本轉(zhuǎn)語(yǔ)音引擎:
load_plugin("Python");
pipcmd("install pyttsx3 -i https://pypi.tuna.tsinghua.edu.cn/simple/");2. 使用如下函數(shù)初始化一個(gè)基于 pyttsx3 的 TTS 引擎并設(shè)置其參數(shù):
function [engine] = textToSpeech_pytts_init()
% 獲取 Python 根對(duì)象用于調(diào)用 Python 函數(shù)等
py = pyroot;
% 導(dǎo)入 pyttsx3 模塊
pyttsx3 = py.pyttsx3;
% 初始化 TTS 引擎
engine = pyttsx3.init();
% 設(shè)置語(yǔ)音屬性 (可選)
voices = engine.getProperty('voices');
% voices 是一個(gè) py.list 對(duì)象
% 目前北太天元無(wú)法直接使用 length 獲取 py.list 的長(zhǎng)度
% 只能暫時(shí)使用 Python 中的 len 來(lái)代替
for i = 1:py.len(voices)
% 同樣, 北太天元中的 frompy 函數(shù)無(wú)法將 py.list 類(lèi)型的 voices 轉(zhuǎn)化為內(nèi)置的數(shù)組
% 所以只能通過(guò) pygetitem 函數(shù)來(lái)獲取每一個(gè)元素
voice = pygetitem(voices, i-1);
if contains(string(voice.name), 'Chinese') % 查找支持中文的語(yǔ)音
engine.setProperty('voice', voice.id);
break
end
if contains(string(voice.name), 'English') % 查找支持英文的語(yǔ)音
engine.setProperty('voice', voice.id);
break;
end
end
% 設(shè)置語(yǔ)速 (可選)
engine.setProperty('rate', 150); % 默認(rèn)值為 200
% 設(shè)置音量 (可選)
engine.setProperty('volume', 0.8); % 范圍是 0.0 到 1.0
end3. 初始化引擎,并傳給引擎文本,讓引擎朗讀,或者保存音頻:
% 初始化 TTS 引擎 engine = textToSpeech_pytts_init(); % 設(shè)置要說(shuō)的文本 text = "你好,我在北太天元中調(diào)用 Python 文本轉(zhuǎn)語(yǔ)音引擎!"; engine.say(text); % 保存為 WAV 文件 engine.save_to_file(text, "output.wav"); % 運(yùn)行并等待語(yǔ)音完成 engine.runAndWait(); engine.stop()
這樣便可以聽(tīng)見(jiàn)引擎朗讀的聲音,也可以在本地找到保存的 output.wav 文件。
本示例中的 textToSpeech_pytts_init() 函數(shù)參考 大預(yù)言模型(LLM)賦能具身智能中的人機(jī)交互 中 Python 模型集成一節(jié),并將無(wú)法在北太天元中運(yùn)行的部分進(jìn)行了修改。
本示例也參考了 Python使用總結(jié)之Python文本轉(zhuǎn)語(yǔ)音引擎:pyttsx3完全指南 如何使用 pyttsx3 庫(kù)。
對(duì)于這樣一組數(shù)據(jù), 每一列數(shù)據(jù)長(zhǎng)度保持一致, 不足的采用空格補(bǔ)充; 數(shù)據(jù)與數(shù)據(jù)之間采用空格分隔:
13.52220 0.00 18.100 0 0.6310 3.8630 100.00 1.5106 24 666.0 20.20 131.42 13.33 23.10 4.89822 0.00 18.100 0 0.6310 4.9700 100.00 1.3325 24 666.0 20.20 375.52 3.26 50.00 5.66998 0.00 18.100 1 0.6310 6.6830 96.80 1.3567 24 666.0 20.20 375.33 3.73 50.00 6.53876 0.00 18.100 1 0.6310 7.0160 97.50 1.2024 24 666.0 20.20 392.05 2.96 50.00 9.23230 0.00 18.100 0 0.6310 6.2160 100.00 1.1691 24 666.0 20.20 366.15 9.53 50.00 8.26725 0.00 18.100 1 0.6680 5.8750 89.60 1.1296 24 666.0 20.20 347.88 8.88 50.00 11.10810 0.00 18.100 0 0.6680 4.9060 100.00 1.1742 24 666.0 20.20 396.90 34.77 13.80 18.49820 0.00 18.100 0 0.6680 4.1380 100.00 1.1370 24 666.0 20.20 396.90 37.97 13.80 19.60910 0.00 18.100 0 0.6710 7.3130 97.90 1.3163 24 666.0 20.20 396.90 13.44 15.00 15.28800 0.00 18.100 0 0.6710 6.6490 93.30 1.3449 24 666.0 20.20 363.02 23.24 13.90
使用內(nèi)置的 readmatrix 讀取, 會(huì)出現(xiàn)以下兩個(gè)問(wèn)題:
1. 每行行首可能會(huì)出現(xiàn)空格, readmatrix 會(huì)得到第一個(gè)數(shù)據(jù)為 NaN;
2. 數(shù)據(jù)與數(shù)據(jù)之間雖然都是空格, 但空格數(shù)量不統(tǒng)一, 有1個(gè)空格、2個(gè)空格和3個(gè)空格幾種情況。
所以使用 readmatrix 得到的數(shù)據(jù)列數(shù)不匹配,多分隔出來(lái)的數(shù)據(jù)全部都是 NaN.
對(duì)于上述兩個(gè)問(wèn)題,MATLAB 中的 readmatrix 函數(shù)是可以輸入 "ConsecutiveDelimitersRule", "join" 把重復(fù)的分隔符合并成一個(gè)分隔符, "LeadingDelimitersRule", "ignore" 參數(shù)忽略行首的分隔符.
contains(str, pat) 函數(shù)用于判斷字符串 str 中是否包含 pat 子串,但在 Windows 4.2.1 版本中,contains 像是被一個(gè)用于幾何包含的函數(shù)給覆蓋了


經(jīng)過(guò)測(cè)試,該函數(shù)在 Linux 4.2.1 版本和 Windows 4.2.0 版本中都能正常運(yùn)行。
Lévy 飛行是基于 Lévy 分布的隨機(jī)搜索過(guò)程. Lévy 飛行是一種隨機(jī)行走, 其中步長(zhǎng)服從 Lévy 分布. 它通過(guò)模擬自然界中動(dòng)物在尋找食物或遷徙過(guò)程中, 采取的長(zhǎng)距離跳躍和短距離滑行相結(jié)合的移動(dòng)模式. 其核心特點(diǎn)是步長(zhǎng)的概率分布為重尾分布, 即存在相對(duì)較高的概率出現(xiàn)大跨步, 這使得動(dòng)物能夠在廣闊的范圍內(nèi)進(jìn)行搜索.
與傳統(tǒng)的隨機(jī)游走策略相比, Lévy 飛行策略具有以下優(yōu)勢(shì):
* 提高搜索效率: 通過(guò)長(zhǎng)距離跳躍, Lévy 飛行策略能夠快速擴(kuò)大搜索范圍, 提高搜索效率;
* 跳出局部最優(yōu)解: Lévy 飛行策略在搜索過(guò)程中偶爾會(huì)出現(xiàn)大跨步, 有助于跳出局部最優(yōu)解, 尋找全局最優(yōu)解;
* 適應(yīng)性強(qiáng): Lévy 飛行策略適用于各種復(fù)雜環(huán)境, 能夠有效應(yīng)對(duì)路徑規(guī)劃中的不確定性.
因此, Lévy 飛行算法作為一種高效的優(yōu)化路徑規(guī)劃方法, 目前被廣泛應(yīng)用于智能優(yōu)化算法中, 如麻雀搜索算法、鯨魚(yú)優(yōu)化算法、粒子群優(yōu)化算法、蜣螂優(yōu)化算法等等.
Mantegna 算法是 Mantegna 于 1994 年提出的用于模擬對(duì)稱(chēng) Lévy 穩(wěn)定過(guò)程. 根據(jù) Mantegna 算法, 可以通過(guò)生成兩個(gè)正態(tài)分布的數(shù)據(jù)計(jì)算得到服從 Lévy 分布的數(shù)據(jù). 采用北太天元數(shù)值計(jì)算通用軟件來(lái)實(shí)現(xiàn)該算法的代碼如下:
function [s] = levyrnd(beta, m, n) %LEVYRND - Mantegna 算法生成對(duì)稱(chēng) Lévy 穩(wěn)定分布隨機(jī)數(shù)組. % % 用法: % levyrng(beta); - 生成單個(gè)服從參數(shù)為 beta 的 Lévy 分布數(shù)據(jù); % levyrng(beta, m); - 生成 m x m 維服從參數(shù)為 beta 的 Lévy 分布矩陣; % levyrng(beta, m, n); - 生成 m x n 維服從參數(shù)為 beta 的 Lévy 分布矩陣. % % 示例: % >> rng(1234); % >> levyrnd(1.8) % 0.5299 % >> levyrnd(0.5, 2) % 0.7074 -0.0853 % -2.1705 -219.2879 % >> levyrnd(1.1, 2, 3) % -0.6688 0.2140 -1.8900 % -3.4959 0.2340 -24.1111 % narginchk(1, 3); if nargin == 1 m = 1; n = 1; elseif nargin == 2 n = m; end % 計(jì)算 u ~ N(0, sigma^2) 的方差 num = gamma(1 + beta) * sin(pi * beta / 2); den = gamma((1 + beta)/2) * beta * 2^((beta - 1)/2); sigma = (num / den)^(1/beta); % 生成隨機(jī)變量 u 和 v, v ~ N(0, 1). u = normrnd(0, sigma, m, n); v = normrnd(0, 1, m, n); % 生成 Lévy 分布數(shù)據(jù) s = u ./ abs(v).^(1/beta); end
利用 Mantegna 算法, 可以生成一系列的服從 Lévy 分布的隨機(jī)步長(zhǎng), 模擬 Lévy 飛行. 值得注意的是, 隨機(jī)游走是在任意維度空間中, 一個(gè)點(diǎn)隨機(jī)地向任意方向前進(jìn)任意長(zhǎng)度的距離, 然后不斷的重復(fù).
我們模擬從原點(diǎn)出發(fā), 隨機(jī)向任意方向前進(jìn)步長(zhǎng)為 $s$ 的 Lévy 飛行. 模擬過(guò)程如下:
clear;
clc;
% Lévy 分布參數(shù)
beta = 1.5;
% Lévy 飛行步數(shù)
n = 1000;
% 生成隨機(jī)方向
angles = 2 * pi * rand(n, 1);
% 初始化數(shù)據(jù)
x = zeros(n + 1, 1);
y = zeros(n + 1, 1);
% 生成 Lévy 步長(zhǎng)
s = levyrnd(beta, n, 1);
% 循環(huán)游走
for i = 1:n
x(i + 1) = x(i) + cos(angles(i)) * s(i);
y(i + 1) = y(i) + sin(angles(i)) * s(i);
end
% 繪制 Lévy 飛行隨機(jī)游走
plot(x, y);
title("Levy 飛行策略");
xlabel("x");
ylabel("y");得到的結(jié)果如圖所示:

對(duì)于 MATLAB 保存的 MAT 格式數(shù)據(jù)文件,在北太天元中只能讀取 v6 和 v7 兩個(gè)版本的數(shù)據(jù)文件,對(duì)于 v4 和 v7.3 兩個(gè)版本的數(shù)據(jù)文件,在北太天元中均提示數(shù)據(jù)文件為空。
1. 對(duì)于可選位置參數(shù) (addOptional) 和可選參數(shù) (addParameter) 共同存在的情形, 仍不能正確的解析, 示例在原來(lái)的例子中加入 addRequired 如下:
function findArea(varargin)
p = inputParser;
p = addRequired(p, 'width', @(x) isnummeric(x) && isscalar(x) && (x > 0));
p = addOptional(p, 'height', 1);
p = addParameter(p, 'units', 'm');
p = addParameter(p, 'shape', 'square');
p = parse(p, varargin{:});
width = p.Results.width
height = p.Results.height
units = p.Results.units
shape = p.Results.shape
endfindArea(2, 3, "units", "cm") 現(xiàn)在可以正確解析了. 但是如果可選位置參數(shù)輸入不足時(shí), 如 findArea(2, "units", "cm") 就不能正常解析了.
在 inputParser 類(lèi)的代碼第 152 行定義的當(dāng)前參數(shù)位置指針 pos = 1, 有一個(gè)必須參數(shù)和一個(gè)可選位置參數(shù), pos 經(jīng)過(guò)兩次加一得到 pos = 3, 此時(shí)解析參數(shù)的時(shí)候, 剩余可選參數(shù)為 varargin(3:end) = "cm", "units" 雖然沒(méi)有像之前的版本被賦值給 "height", 但也被吞掉消失. 只剩下 "units" 不是成對(duì)出現(xiàn)導(dǎo)致解析可選參數(shù)出錯(cuò).
2. 在添加參數(shù)的時(shí)候, checkArgs(list, value, validator) 函數(shù)是通過(guò) ismember 函數(shù)來(lái)判斷是否存在該參數(shù)名的.
ismember 只能判斷字符元胞數(shù)組, 那么在添加參數(shù)的時(shí)候只能使用字符數(shù)組, 如上面的示例 p = addOptional(p, 'width', 1); 原本使用的字符串在使用的時(shí)候就全部報(bào)錯(cuò).
這個(gè)問(wèn)題只需要在 inputParser 中添加幾個(gè) char 全部轉(zhuǎn)化成字符數(shù)組即可, 而不用關(guān)心用戶(hù)輸入的是字符還是字符串.
分別是 addParameter 函數(shù) 101, 102 行 paramName 外面添加 char(), addOptional 函數(shù) 112, 113 行 paramName 外面添加 char(), addRequired 函數(shù) 123 行添加 char().
copyfile(source, destination) 用于復(fù)制文件. 在使用過(guò)程中存在以下幾個(gè)問(wèn)題
1. 如果 destination 不存在, 提示錯(cuò)誤使用 copyfile 函數(shù), 文件 destination 不存在, 這是 Windows 和 Linux 均存在的問(wèn)題.
2. 創(chuàng)建一個(gè)空文件 destination, 此時(shí)再調(diào)用 copyfile 復(fù)制文件, Windows 平臺(tái)可以成功復(fù)制, Linux 平臺(tái)報(bào)錯(cuò)
cp: /opt/Baltamatica/lib/libattr.so.1: version `ATTR_1.3' not found (required by cp)
cp: /opt/Baltamatica/lib/libselinux.so.1: no version information available (required by cp)
cp: /opt/Baltamatica/lib/libselinux.so.1: no version information available (required by cp)
目前嘗試的解決方案, 將系統(tǒng)的 libattr.so.1 和 libselinux.so.1 文件鏈接到 /opt/Baltamatica/lib 中
sudo mv /opt/Baltamatica/lib/libattr.so.1 /opt/Baltamatica/lib/libattr.so.1.bak
sudo mv /opt/Baltamatica/lib/libselinux.so.1 /opt/Baltamatica/lib/libselinux.so.1.bak
sudo ln -s /usr/lib/x86_64-linux-gnu/libattr.so.1 /opt/Baltamatica/lib/libattr.so.1
sudo ln -s /usr/lib/x86_64-linux-gnu/libselinux.so.1 /opt/Baltamatica/lib/libselinux.so.1
重新運(yùn)行北太天元后可以復(fù)制已存在的文件.
1. Python 中的復(fù)數(shù)如何和北太天元中的復(fù)數(shù)相互轉(zhuǎn)化. 這一點(diǎn)在 MATLAB 中也是沒(méi)有相應(yīng)的函數(shù)將 Python 的復(fù)數(shù)轉(zhuǎn)化為 MATLAB 函數(shù)的復(fù)數(shù), MATLAB 的機(jī)制是只要對(duì) Python 的復(fù)數(shù)做了運(yùn)算, 就自動(dòng)轉(zhuǎn)化為 MATLAB 的復(fù)數(shù), 如 py.complex(1, 1) + 0 得到的就是 MATLAB 中的復(fù)數(shù) 1.0 + 1.0i.
2. 創(chuàng)建復(fù)數(shù)符號(hào)變量, sym(1+i) 不可行, 可行的兩種方式, 直接使用符號(hào)虛數(shù)單位 sp.I 如 1 + sp.I, 另一種使用簡(jiǎn)化函數(shù) sp.simplify() 或者封裝好的 symsimplify(), 如 symsimplify(1+i);
3. SymPy 插件創(chuàng)建的符號(hào)變量不支持絕對(duì)值函數(shù) abs(sym('x')).
4. SymPy 插件在調(diào)用 lambdify 函數(shù)時(shí)報(bào)錯(cuò), 'NoneType' object has no attribute 'f_locals'. 示例如下:
load_plugin SymPy
sp = sympy_sp;
x = sym('x');
y = sin(x);
f = sp.lambdify(x, y)