Inversion of a 5D look-up table

조회 수: 2(최근 30일)
Bogdan Miroschnitschenko
Bogdan Miroschnitschenko 2021년 4월 9일
편집: Bogdan Miroschnitschenko 2021년 4월 9일
Dear Mathwork coomunity,
I have four 5D Look-Up tables with input and output parameters obtained with the following code using the attached simulation results file.
clc;
clear;
close all;
%read simulation data
Results = readmatrix('Stator_separeted.xlsx');
AngleR=Results(:,1);
AngleL=Results(:,2);
MMFL=Results(:,3);
MMFR=Results(:,4);
move=Results(:,5);
Torque=Results(:,6)*0.001;
Force=Results(:,7);
FluxL=Results(:,8);
FluxR=Results(:,9);
turns = 100; % number of turns;
% converting of simulation data
CurrentR = MMFR./turns;
CurrentL = MMFL./turns;
FluxLinkageL = FluxL*turns;
FluxLinkageR = FluxR*turns;
%axis vectors of 5D-Look-Up table (input simulation parameters)
AngleRvec = [-40;-35;-30;-25;-20;-15;-10;-5;0];
AngleLvec = [-40;-35;-30;-25;-20;-15;-10;-5;0];
CurrentLvec = [-700/turns; 0/turns; 700/turns; 1400/turns; 2100/turns];
CurrentRvec = [-700/turns; 0/turns; 700/turns; 1400/turns; 2100/turns];
movevec = [-4; -2; 0; 2; 4];
%reshape vectors of output simulation parameters to 5D-arrays
reshapeVec = [9 9 5 5 5];
FluxLinkageL = reshape(FluxLinkageL,reshapeVec);
FluxLinkageR = reshape(FluxLinkageR,reshapeVec);
Torque = reshape(Torque,reshapeVec);
Force = reshape(Force,reshapeVec);
My question is - how can these four 5D LUTs be inversed to the eight following 4D LUTs:
Inversion of Force-LUT Force(AngleR, AngleL, CurrentL, CurrentR, move) to CurrentL(AngleR, AngleL, Force,move) and CurrentR(AngleR, AngleL, Force,move);
Inversion of Torque-LUT: Torque(AngleR, AngleL, CurrentL, CurrentR, move) to CurrentL(AngleR, AngleL, Torque,move) and CurrentR(AngleR, AngleL, Torque,move);
Inversion of FluxLinkageL-LUT: FluxLinkageL(AngleR, AngleL, CurrentL, CurrentR, move) to CurrentL(AngleR, AngleL, FluxLinkageL,move) and CurrentR(AngleR, AngleL, FluxLinkageL,move);
Inversion of FluxLinkageR-LUT: FluxLinkageL(AngleR, AngleL, CurrentL, CurrentR, move) to CurrentL(AngleR, AngleL, FluxLinkageR,move) and CurrentR(AngleR, AngleL, FluxLinkageR,move).
Of course, if one of these LUTs can be inversed, the remaining can be inversed in the same way.
Please help me with this question.

답변(0개)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by