发帖
日期

无法使用内置的版本更新程序用从4.0.0更新到4.0.3

更新失败,如图所示。我的安装路径是D:\Programs\baltamatica. C:/Users/(用户名)/Downloads和D:\baltam这两个目录都不存在。

Roidt 1 0 2025-03-14

北太天元和MATLAB对文件末尾判断的区别

首先生成一个测试文件,第一行类似于表头,2到4行每行存储3个数,用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 函数逐行读取该文件。方法一:以 feof 函数作为 while 循环的判断条件,依次读取文件的每一行并显示出来
frid = fopen("test.txt", "r");
fgetl(frid);
% 是否到达文件末尾 (EOF)
while ~feof(frid)
    line = fgetl(frid);
    disp(line);
end
fclose(frid);
该方法在北太天元中除了显示文件中的3行数字,还会显示一个-1,这个-1是fgetl判断到文件末尾后返回的。而在 MATLAB 中只显示 3 行数字。方法二:考虑到方法一中 fgetl 函数返回了 -1 但 feof 条件没有起作用,将 while 循环条件改为 true,循环内部满足 feof 条件 break 循环。
frid = fopen("test.txt", "r");
fgetl(frid);
while true
    line = fgetl(frid);
    % 如果到达文件末尾,则退出循环
    if feof(frid)
        break;
    end
    disp(line);
end
fclose(frid);
该方法在北太天元中输出符合预期,但在 MATLAB 中只输出两行数据也就是说,在北太天元中,读取了 7 8 9 三个数后,需要再读取一行才到末尾 (EOF),所以读取到的 -1 没有 disp;而在 MATLAB 中,读取了之后已经到末尾,虽然读取了这三个数,就跳出循环不再显示。代码中的 if 判断更换任意位置在北太天元中都将显示 -1。验证:手动逐行读取文件进行验证
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 中输出的结果分别是测试文件共 5 行,前四行有内容,第五行是空行,在 MATLAB 中,读取完第四行就判断为文件末尾,而在北太天元中,五行全部读完才判断是文件末尾。

邱彼郑楠 0 0 2025-02-20

新手小白求教 fame插件

在插件中加载FAME   出现未加载成功在命令行窗口输入load_plugin(“FAME”) 出现未定义的函数或变量 '“FAME”'

孤独的白羊 2 0 2025-01-06

经典的88行拓扑优化程序top88.m有问题。

在B站偶然看到李若教授的视频,自13年博士论文答辩请了李教授为评委之后就没见过了,仔细看完了整个视频,了解了北太天元。使用北太天元有几天了,有个问题反馈一下。函数:试了好多次,代码拷贝到网页直接去掉了换行符。。。直接上连接吧https://www.topopt.mek.dtu.dk/-/media/Subsites/topopt/apps/dokumenter-og-filer-til-apps/top88.ashx?la=da&hash=43B36C6FDE548DF726ACDDFBB952491391B8109F调用:tic; top88(120, 40, 0.5, 3.0, 3.5, 1); toc存在问题:性能问题。花了52s才运行到44行(组装刚度矩阵),而使用octave只需18s即可执行完整个程序88行。兼容问题。貌似sum函数不能针对sparse矩阵进行操作。导致程序出错。

ljj 2 0 2024-11-09

工作区无法识别 symbolic 插件创建的符号变量

使用 symbolic 插件提供的 sym 命令创建符号变量 x 后,工作区不显示任何变量信息使用 whos 命令查看发现只有 ans 这个变量,且类型识别为 extern. 将这个 ans 赋值给 x 之后,无论参与运算工作区都是不显示任何信息的,也就是工作区无法识别 extern 这种类型的变量。目前将所有公布过的正式版本都安装尝试了一遍,都是这种情况。

邱彼郑楠 3 0 2024-05-07

如何Tab自动补全加载插件中的引入的函数名

加载插件后,插件中的函数似乎不能Tab自动补全例如加载fft插件后,输入f然后tab就无法补全fft有无办法解决?

rong 1 0 2023-10-26

最大公约数和最小公倍数函数内部输出问题

最大公约数和最小公倍数函数部分内部输出未屏蔽,具体情况如下图

鸑鷟 2 0 2023-10-07

对于无穷积分的非数值结果

f=@(x)x.^(-1);
integral(f,1,inf)
%会出现42.2358-很明显是不对的,应该是inf才对

我是我自己 1 0 2023-10-06

函数bug-sort函数

问题类型:功能问题使用的操作系统:Windows11问题描述:sort函数的功能和MATLAB有出入。当数组存在重复元素时,不会对重复元素排序。代码:clc;clear;a=ones(100,1);a(4,1)=2;a(10,1)=2;a(100,1)=2;[~,b]=sort(a)

liuwei 1 0 2023-09-27

单引号字符矩阵模式下此输入无效

问问大佬,为什么同样的程序,matlab没问题,北太天元会报错,这个报错是什么意思捏?

那年夏末 1 0 2023-09-04

plot有些在dev999版本的东西失效

x = 0:0.1:piplot(sin(x),'-o','MarkerIndices')报错:函数plot求值出错: 数据参数无效。

Rain1560 1 0 2023-07-21

inf 函数 不能做 inf( [ 2,3])

matlab 是可以做 inf([2,3]) 的,北太天元的 false 可以做  false([2,3]), 但是 inf 只能做 inf(2), inf(2,3), 不能做 inf([2,3]),

北太卢朓 1 0 2023-06-10