0

我正在使用 oct2py 在我的 python 代码中调用八度函数。一切都应该没问题,并且使用 octave 执行的 octave 函数可以工作,但是当我使用 python 调用该函数时出现此错误:

import os

pathToExecutable = ('C:\\Octave\\Octave-5.2.0\\mingw64\\bin\\octave-cli.exe')
os.environ['OCTAVE_EXECUTABLE'] = pathToExecutable

from oct2py import octave
import pprint
import numpy as np
import matplotlib.pyplot as plt
from scipy.io import loadmat

octave.addpath(octave.genpath('E:/funcs/software/octave_calls'))
octave.eval('MSPP')

Oct2PyError:八度评估错误:错误:'AvgPwr'未定义在第 22 行第 15 列附近错误:调用自:MSPP 在第 22 行第 8 列

这一行中的八度代码如下:

Power=AvgPwr

当我从 .mat 文件导入时定义了 AvgPower

load params.mat %<--transcription corrected (before it was load(params.mat)

编辑:

MSSP 的第一行。

warning off
close all;
clear all;
clc;

%% Load pameters

load params.mat
  
################################################################################

%% CW Laser

Plaser = 10^((AvgPwr-30)/10);         % Average Laser Power
emzm = 1.0;

params.mat 是在另一个 octave 文件中生成的,我在其中加载了所有参数,它包含变量 AvgPwr,我认为 octave 代码的一切都是正确的,因为当我使用 octave 运行它时它运行良好。

4

0 回答 0