How to convert the MATLAB code into the Python?

388 vues (au cours des 30 derniers jours)
Milind dilipkumar Patel
Milind dilipkumar Patel le 26 Oct 2018
Hello, I have a matlab code for the quantitative differential phase contrast imaging and the code is very big and complicated as well. But the problem is the institute where I am working does not allow to use matlab and they have python and LabVIEW, so I would like to convert the matlab code to python or someone knows how to run the matlab code in python then it also be very helpful.
I have attached the main code.
Thank you.
  9 commentaires
Suma K
Suma K le 16 Déc 2023
can u tell how to convert matlab simulink to python programm
Puma
Puma le 16 Avr 2024
c=math.copysign(y, z) covertir a matalb

Connectez-vous pour commenter.

Réponse acceptée

MathWorks Support Team
MathWorks Support Team le 14 Nov 2024
MATLAB provides two-way integration with many programming languages, including Python. The MATLAB Engine API for Python allows you to call MATLAB functions from Python. Similarly, if you have functions and objects in Python, you can call them directly from MATLAB using the Python Interface. Finally, you can build Python packages from MATLAB programs by using MATLAB Compiler SDK™. These packages can be integrated with Python applications and can be shared with desktop users or deployed to web and enterprise systems. To learn more about using MATLAB with Python go here.

Plus de réponses (4)

madhan ravi
madhan ravi le 26 Oct 2018
Modifié(e) : madhan ravi le 26 Oct 2018
You can use numpy framework which contains matlab libraries.
See cheat sheet , I faced similar situation as you but raged with the cheat sheet, good luck!
  1 commentaire
Emile
Emile le 7 Mai 2024
Thanks a lot for this. The cheat sheet helps a lot.

Connectez-vous pour commenter.


MathWorks Support Team
MathWorks Support Team le 25 Oct 2022
MATLAB provides two-way integration with many programming languages, including Python. The MATLAB Engine API for Python allows you to call MATLAB functions from Python. Similarly, if you have functions and objects in Python, you can call them directly from MATLAB using the Python Interface. Finally, you can build Python packages from MATLAB programs by using MATLAB Compiler SDK™. These packages can be integrated with Python applications and can be shared with desktop users or deployed to web and enterprise systems. To learn more about using MATLAB with Python go here.
  4 commentaires
Walter Roberson
Walter Roberson le 17 Sep 2023
The original poster of the question used the term "problem", rather than a phrasing such as "great thing", so it was not a "feature" to the original poster.
Daniel
Daniel le 17 Sep 2023
@Walter Roberson - ChatGPT may be useful to help you understand sarcasm as well :)

Connectez-vous pour commenter.


Gurubasava Bhure
Gurubasava Bhure le 24 Juil 2021
Modifié(e) : Walter Roberson le 26 Oct 2022
clc()
clear(mstring('all'))
close(mstring('all'))
# Generating the bit pattern with each bit 20 samples long
b = round(rand(1, 30))
pattern = mcat([])
for k in mslice[1:30]:
if b(1, k) == 0:
sig = -ones(1, 20)
else:
sig = ones(1, 20)
end
pattern = mcat([pattern, sig])
end
subplot(4, 1, 1)
plot(pattern)
axis(mcat([-1, 600 - 1.5, 1.5]))
title(mstring('Original Bit Sequence'))
# Generating the pseudo random bit pattern for spreading
d = round(rand(1, 120))
pn_seq = mcat([])
carrier = mcat([])
t = mcat([mslice[0:2 * pi / 4:2 * pi]])# Creating 5 samples for one cosine
for k in mslice[1:120]:
if d(1, k) == 0:
sig = -ones(1, 5)
else:
sig = ones(1, 5)
end
c = cos(t)
carrier = mcat([carrier, c])
pn_seq = mcat([pn_seq, sig])
end
# Spreading of sequence
spreaded_sig = pattern *elmul* pn_seq
subplot(4, 1, 2)
plot(spreaded_sig)
axis(mcat([-1, 600 - 1.5, 1.5]))
title(mstring('Spreaded signal'))
# BPSK Modulation of the spreaded signal
bpsk_sig = spreaded_sig *elmul* carrier# Modulating the signal
subplot(4, 1, 3)
plot(bpsk_sig)
axis(mcat([-1, 600 - 1.5, 1.5]))
title(mstring('BPSK Modulated Signal'))
#Plotting the FFT of DSSS signal
y = abs(fft(xcorr(bpsk_sig)))
subplot(4, 1, 4)
plot(y / max(y))
xlabel(mstring('Frequency'))
ylabel(mstring('PSD'))
#Demodulation and Despreading of Received Signal
figure()
rxsig = bpsk_sig *elmul* carrier
demod_sig = mcat([])
for i in mslice[1:600]:
if rxsig(i) >= 0:
rxs = 1
else:
rxs = -1
end
demod_sig = mcat([demod_sig, rxs])
end
subplot(3, 1, 1)
plot(demod_sig)
axis(mcat([-1, 600 - 1.5, 1.5]))
title(mstring('Demodulated Signal'))
despread_sig = demod_sig *elmul* pn_seq
subplot(3, 1, 2)
plot(despread_sig)
axis(mcat([-1, 600 - 1.5, 1.5]))
title(mstring('Despreaded data'))
#Power Spectrum of Despreaded data
z = 0.5 + 0.5 * despread_sig
y = abs(fft(xcorr(z)))
subplot(3, 1, 3)
plot(y / max(y))
axis(mcat([0, 500, 0, 1.5]))
xlabel(mstring('Frequency'))
ylabel(mstring('PSD'))
  17 commentaires
Jim
Jim le 7 Mar 2025

Has anyone tried the code? Subplot is used, implying a matplotlib import, but no declaration is evident.

The option to open in online matlab is misleading, especially when the code, in that app, is credited with multiple errors.

No '#!/bin/python' header.

But... I get the idea.

Walter Roberson
Walter Roberson le 8 Mar 2025
The use of mstring (mutable strings) in contests where fixed strings make more sense, suggests to me that some facility such as chatGPT was used to convert the code.

Connectez-vous pour commenter.


Arash Rabbani
Arash Rabbani le 26 Mai 2022
You may want to check these tutorials on how to convert a code from MATLAB to python.
  1 commentaire
nazanin
nazanin le 15 Nov 2023
is that possible to get help ?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Introduction to Installation and Licensing dans Help Center et File Exchange

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by