怎样将excel数据转化到etabs中
发布网友
发布时间:2023-03-24 05:51
我来回答
共1个回答
热心网友
时间:2023-10-16 09:53
1、手工打开模型输出excel文件,可选择部分输出即可。然后把excel数据读入到matlab中进行后续的处理。这个方法优点在于路径明确,操作简单,主要部分均在matlab中程序编写。缺点在于写出excel和读入excel的效率很低,需要大量的时间读入数据,但一旦完成了这两项工作后就能很顺利的完成后续工作。经过统计,30片墙的结果输出读入时间可能达到10个小时以上,几乎无法忍受;另外该方法无法自动化完成过程。
2、对1方法的改进,在输出excel表后,在excel表采用VBA初次编程实现对结果的一次提炼,减少数据量后再读入matlab进行后续处理。这种方法可行性应该没问题,缺点在于多次编程,对VBA不是很熟悉,VBA中求解复杂公式效率降低,但效率比1应该快些,没有亲测;无法自动化完成,需要分段处理。
3、直接采用Excel中VBA编程启动etabs,并根据需求通过ETABS-API提取相应的结果,同时并做处理写到excel表中,再进入matlab进行后续处理。优点在于能够自动化的提取需要的数据,通过API提取会快些,数据也直接进行处理,把无用的数据过滤掉,缺点在Etabs中API不稳定,而且返回的部分数据是错的,使用起来需要格外小心。另外使用EXCEL操作需要手动进行。
4、导出mdb文件,然后用matlab直接调用sql语言去操作数据库,返回需要的结果,避免了要读入数据操作,速度应该会快多了,matlab操作数据库还需要再研究下,优缺点待考量,有这方面资料的朋友可以发给我一份(qq:2669866440,或QQ邮箱)
5、直接使用matlab调用etabs-api获取数据,但是这个过程需要很长的时间,效率比1还低。也比3低,不知道为什么,但无论如何效率都是问题。
总结:提取海量数据的瓶颈在于效率,无论手工还是自动都是如此。有高手可以给我建议,对这方面我还是新手。