Help with Integral and MATLAB Equation using Real Numbers

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
1 replies · 1K views
Lemenks
Messages
14
Reaction score
0
I carried out a physics experiment and I wanted to analysis the problem with matlab. I have some code in MATLAB that "works" as in it gives ok result but the numbers used are quite nonsensical, I need help making the reworking the equation with real numbers. I am not sure if this is the correct thread, if not sorry. Here is my code:

Matlab:
format long;
clear all;

I0=39546.95973;
i=sqrt(-1);
r=0.0;
fid=fopen('plot.txt','w')  %Êý¾ÝдÔÚplot.txt
for m=1:300
    p(m)=m*0.0001-0.015;   %¿ÉÒÔµ÷Õû×÷ͼ²½³¤
    In(m)=0;
    dddr=0.00001;
    for r=0.0:dddr:0.010   %¸ù¾ÝÊÕÁ²ÐÔµ÷Õû»ý·ÖÉÏÏ޺Ͳ½³¤
        In(m)=In(m)+r*besselj(0,5500000*r*p(m))*exp(-4.325259515570934*10^6*r*r)*exp(-i*(5500000*r*r-27.014528191562999*exp(-4.325259515570934*10^6*r*r)));
    end
    I(m)=3.025*10^13*dddr^2*I0*(norm(In(m)))^2;
    fprintf(fid,'%9.4f  %9.4f  \n',p(m),I(m));
end
fclose(fid)
fclose all;
hold off
    plot(p,I);  %»Í¼
hold on
return;

My main problem is using very large numbers like "5500000". What I would like to do, is make the exp(a*exp(b*r^2)) component be the part of the function that determines the number of rings, where a=2Npi and N would determine the number of rings. However I am not sure how to go about normalizing the rest of the constants so that this would be the case.

Mod note: I added code tags. Please do that every time you post code.
 
on Phys.org
You will have to give more details. What physical problem are you looking at? What is the code actually doing?