【STK】STK MATLAB互联后,MATLAB无法执行stkInit

2023-10-22 18:30

本文主要是介绍【STK】STK MATLAB互联后,MATLAB无法执行stkInit,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

博主的第一篇博客

文章目录

  • 一、在此之前的安装步骤
  • 二、正文
  • 三、解决方法


一、在此之前的安装步骤

1、STK11.6、STK11.2.0安装包,STK中文学习资料获取途径:
(1)【STK】STK11.6下载安装+MATLAB互连+各插件模块.
(2)B站STK11.6 安装教程(视频介绍里有安装包链接).
2、整体的STK 11.6 安装、与MATLAB的互联过程可以参考:STK 11.6 安装、与MATLAB的互联及其混合编程.
本文已经到了这一步
在这里插入图片描述

本文解决之后遇到的MATLAB无法执行stkInit的问题(参考自【百度贴吧】求助 STK与MATLAB互联)

二、正文

错误:

>> stkInit
尝试将 SCRIPT mexConnect 作为函数执行:
C:\Program Files\AGI\STK 11\bin\Matlab\mexConnect.m出错 stkValidScen (line 20)
out = mexConnect('stkValidScen');出错 stkInit (line 15)
if stkValidScen

如图

三、解决方法

修改“当前文件夹”为 C:\Program Files\AGI\STK 11,右击bin文件夹

在这里插入图片描述
“添加到路径”,“选定的文件夹和子文件夹”
在这里插入图片描述

关闭STK后重新打开STK,但是不要新建场景,只要STK开着就行在这里插入图片描述
MATLAB中重新执行stkInit
在这里插入图片描述
这个样子就是OK的意思。再试一段代码(摘自《STK在计算机仿真中的应用》,杨颖,王琦,第二十一章,21.2.1,STKTest.m)

delete(get(0,'children'));% Matlab连接STK,首先要获得STK的地址,示例中采用了默认地址stkDefaultHost。
% 得到地址后,就可以利用语句stkOpen打开默认地址,建立Matlab与STK的连接了。
remMachine = stkDefaultHost;
conid=stkOpen(remMachine);dtr = pi/180;
rtd = 180/pi;% 在STK中创建新场景前,需要检查STK中的当前场景,如果目前STK中已经存在一个场景,
% 就可以利用语句stkUnload关闭场景,或者利用语句stkClose关闭当前连接。
scen_open = stkValidScen;
if scen_open == 1rtn = questdlg('Close the current scenario?');if ~strcmp(rtn,'Yes')stkClose(conid)returnelsestkUnload('/*')end
end% 利用语句stkNewObj创建新场景。这里需要注意一个问题,stkNewObj在STK5.0中创建新场景时,
% 语法为stkNewObj('Scenario','','Scenario22-1'),这应该是STK5.0的程序错误所致。
% stkNewObj的正确语法应该是stkNewObj('ParentPath','Class','Name'),
% 其中ParentPath为场景或对象的路径,Class为新建对象的类别,Name为新建对象的名称。
disp('Create a new scenario');
stkNewObj('Scenario','','Scenario22-1');

在这里插入图片描述
STK中开始运行,一会儿后生成了一个新的场景:
在这里插入图片描述
于是实现了在MATLAB中控制STK,即二者互联。

这篇关于【STK】STK MATLAB互联后,MATLAB无法执行stkInit的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/262944

相关文章

Java子线程无法获取Attributes的解决方法(最新推荐)

《Java子线程无法获取Attributes的解决方法(最新推荐)》在Java多线程编程中,子线程无法直接获取主线程设置的Attributes是一个常见问题,本文探讨了这一问题的原因,并提供了两种解决... 目录一、问题原因二、解决方案1. 直接传递数据2. 使用ThreadLocal(适用于线程独立数据)

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不

C#如何优雅地取消进程的执行之Cancellation详解

《C#如何优雅地取消进程的执行之Cancellation详解》本文介绍了.NET框架中的取消协作模型,包括CancellationToken的使用、取消请求的发送和接收、以及如何处理取消事件... 目录概述与取消线程相关的类型代码举例操作取消vs对象取消监听并响应取消请求轮询监听通过回调注册进行监听使用Wa

PHP执行php.exe -v命令报错的解决方案

《PHP执行php.exe-v命令报错的解决方案》:本文主要介绍PHP执行php.exe-v命令报错的解决方案,文中通过图文讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录执行phpandroid.exe -v命令报错解决方案执行php.exe -v命令报错-PHP War

Oracle数据库执行计划的查看与分析技巧

《Oracle数据库执行计划的查看与分析技巧》在Oracle数据库中,执行计划能够帮助我们深入了解SQL语句在数据库内部的执行细节,进而优化查询性能、提升系统效率,执行计划是Oracle数据库优化器为... 目录一、什么是执行计划二、查看执行计划的方法(一)使用 EXPLAIN PLAN 命令(二)通过 S

使用@Slf4j注解,log.info()无法使用问题

《使用@Slf4j注解,log.info()无法使用问题》在使用Lombok的@Slf4j注解打印日志时遇到问题,通过降低Lombok版本(从1.18.x降至1.16.10)解决了问题... 目录@Slf4androidj注解,log.info()无法使用问题最后解决总结@Slf4j注解,log.info(

三国地理揭秘:为何北伐之路如此艰难,为何诸葛亮无法攻克陇右小城?

俗话说:天时不如地利,不是随便说说,诸葛亮六出祁山,连关中陇右的几座小城都攻不下来,行军山高路险,无法携带和建造攻城器械,是最难的,所以在汉中,无论从哪一方进攻,防守方都是一夫当关,万夫莫开;再加上千里运粮,根本不需要打,司马懿只需要坚守城池拼消耗就能不战而屈人之兵。 另一边,洛阳的虎牢关,一旦突破,洛阳就无险可守,这样的进军路线,才是顺势而为的用兵之道。 读历史的时候我们常常看到某一方势

maven 编译构建可以执行的jar包

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」👈,「stormsha的知识库」👈持续学习,不断总结,共同进步,为了踏实,做好当下事儿~ 专栏导航 Python系列: Python面试题合集,剑指大厂Git系列: Git操作技巧GO

matlab读取NC文件(含group)

matlab读取NC文件(含group): NC文件数据结构: 代码: % 打开 NetCDF 文件filename = 'your_file.nc'; % 替换为你的文件名% 使用 netcdf.open 函数打开文件ncid = netcdf.open(filename, 'NC_NOWRITE');% 查看文件中的组% 假设我们想读取名为 "group1" 的组groupName

ORACLE 11g 创建数据库时 Enterprise Manager配置失败的解决办法 无法打开OEM的解决办法

在win7 64位系统下安装oracle11g,在使用Database configuration Assistant创建数据库时,在创建到85%的时候报错,错误如下: 解决办法: 在listener.ora中增加对BlueAeri-PC或ip地址的侦听,具体步骤如下: 1.启动Net Manager,在“监听程序”--Listener下添加一个地址,主机名写计