MatlabR2015a in Windows10 (X32).
Because in 2015 version, there is not NUFFT, i downloaded, code for NUFFT from mathworks site (code by Matthew Ferrara).
After i made "mex FGG_Convolution1D.c", (as described in "Overview"), i received :
mex FGG_Convolution1D_type2.c
Building with 'lcc-win32'.
MEX completed successfully.
The same for
mex FGG_Convolution2D.c
mex FGG_Convolution2D_type2.c
mex FGG_Convolution3D.c
mex FGG_Convolution3D_type2.c
Well, after that, i create a sin function (x) over non uniform time intervals, but when i made :
X=nufft(x)
i received this error message :
X=nufft(x);
Undefined function or variable 'nufft'
Also i tried :
X=FGG_Convolution1D.c (x), and received the same error :
Undefined function or variable 'FGG_Convolution1D.c'
Anybody can help ?
Related
When i'm trying to compile a program in TwinCat 3 using the library Tc3_EventLogger. I'm using TwinCat3 Build 4018.58.
I receive the following errors (Please take a look at the image below):
TC3 Compile Error Picture
These are the errors I received as plain text :
'Verbose' is no component of 'TCEVENTSEVERITY' [tc3_eventlogger, 3.1.28.0
(beckhoff automation gmbh)].
Cannot convert type 'Unknown type: 'TcEventSeverity.Verbose'' to type
'TCEVENTSEVERITY' [tc3_eventlogger, 3.1.28.0 (beckhoff automation gmbh)].
Initialisation of constant variable 'EMPTY_SEVERITY' not constant [tc3_eventlogger, 3.1.28.0 (beckhoff automation gmbh)].
I already tried to delete and add the library again but that didn't solve the problem.
How can I solve it?
Thanks
I have written a program in c++11. My intention is to use MATLAB environment for plotting.
So, I followed these two links to have some idea:MATLAB_Build C++ Engine programs and c++ start MATLAB session. (There must be other ways to interface MATLAB and c++. But I want to know where is my fault before trying other ones)
As those above links have suggested I built my project accordingly using visual studio '17. The initial errors that I found was, my application could not locate the following .dll files libMatlabEngine.dll, libMatlabdataArray.lib.
So, I moved my .dlls to the executable location as suggested here. But after then my code is throwing the following error: 0xC0000005: Access violation executing location 0x0000000000000000.
Below is the piece of code that I'm trying. I guess it's the startMATLAB() which is returning a NULL pointer and the code is failing for that. But I can't figure out what's the reason.
Appreciate your help.
//Start the MATLAB engine
using namespace matlab::engine;
using namespace matlab::data;
unique_ptr<MATLABEngine> matlabptr = startMATLAB();
//Cretae a matlab array factory
ArrayFactory factory;
auto inputArray = factory.createArray({ 1, 6 }, cppData.cbegin(), cppData.cend());
auto time_array = factory.createArray({ 1, 6 }, time.cbegin(), time.cend());
matlabptr->setVariable(convertUTF8StringToUTF16String("data"), move(inputArray));
matlabptr->setVariable(convertUTF8StringToUTF16String("time"), move(time_array));
matlabptr->eval(convertUTF8StringToUTF16String("plot(time, data)"));
So, I got the code for DSP-SIFT from the original works of the author in the form of a toolbox. When I followed the instructions and tried to get it to run in MATLAB :
>> dsp_setup
>> dsp_mosaic
Undefined function 'vl_usift' for input arguments of type 'single'.
Error in vl_dspsift (line 50)
frames = vl_usift(im);
Error in dsp_mosaic (line 68)
[f1, d1] = vl_dspsift(im1g, opt);
After Googling this error(I am new to MATLAB), I found a solution saying that maybe my function cannot be recognised by MATLAB, so I need to add the containing folder to the MATLAB search path, which I tried doing:
>> which vl_usift -all
'vl_usift' not found.
>> addpath ('/home/dsp_toolbox_v0.0.2/dsp_toolbox_v0.0.2/toolbox/sift/')
Howver, I get the same error when trying to run the code.
I can add the code if it helps, but I do need advice on how to proceed from here.
Thanks
So, after a few hours of searching around, I finally came across the problem, there were a few lines commented in the setup file which I had to uncomment. Simple and frustrating.
Thanks!
Undefined function or method 'paddedsize' for input arguments of type 'double'
how i can resolve this.
f = imread('cameraman.tif');
PQ=paddedsize(size(f));
F=fft2(f,PQ(1),PQ(2));
sig=40;
H=lpfilter('ideal',PQ(1),PQ(2),sig);
imshow(fftshift(H),[ ]);
G=H.*F;
g=real(ifft2(G));
g=g(1:size(f,1),1:size(f,2));
figure;
imshow(g,[ ]);
paddedsize is not a MATLAB builtin or library function. Presumably this comes from some third-party library you should try and find.
'paddedsize' is a function available on the Matlab File Exchange Here. In order to use the function you will need to download the m-file into your working directory or add the file location to your path.
I need to read some Meteological data in grib format. I have download a code which can read the data. but in the middel of code ibm2fltmex5.dll is needed. I have download the dll too from ibm2fltmex5.dll. I have created folders (MeteoLab\Read_GRIB) in (C:\Program Files\MATLAB\R2009a\toolbox) and put the dll in it.I restart my PC but that code error again.
function bds_struct=get_bds(fid,lenbds)
bds=fread(fid,11);
bds_struct.len=lenbds;
bds_struct.oct4=bds(4);
bds_struct.bsfE=int2(bds(5),bds(6));
bds_struct.RefVal=ibm2fltmex5(bds(7:10));
bds_struct.nbits=bds(11);
bds=fread(fid,lenbds-11);
bds_struct.bindata=uint8(bds);
error is
Undefined function or method 'ibm2fltmex5' for input arguments of type
'double'
.
Did I put dll in the correct place? what else should I do?
Any comments is appriciated.
I find another Way, there is a Matlab function which do the same: can be download from :
ibm2flt.m