当前位置: 首页>>代码示例>>Python>>正文


Python integrator函数代码示例

本文整理汇总了Python中integrator函数的典型用法代码示例。如果您正苦于以下问题:Python integrator函数的具体用法?Python integrator怎么用?Python integrator使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了integrator函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: run_sim

    def run_sim(self):
        # start time
        timer = time.time()
        # create molecule
        mol = molecule(self.molecule, self.temperature)
        # create laser
        las = laser(self.pulse, self.intensity)

        # generate usefule quantities
        Jmax = mol.params()[3]
        delta_alpha = mol.params()[2]
        B = mol.params()[0]
        D = mol.params()[1]
        Jweight = mol.Boltzmann()

        sigma = las.pulse_FWHM*B/hbar
        E0 = 2.74*10**10*las.Int**.5 # electric field amplitude
        strength=0.5*4*np.pi*epsilon0*delta_alpha*E0**2/B

        # create integrator
        intSEq = integrator(mol.params()[3], las.pulse_FWHM*B/hbar, strength, B, D)

        # integrate
        Cstor = intSEq.integrate()


        # Expectation value, incoherent, thermal average.
        print('Sim done. \n \nCalculating cos**2.\n')
        exp_val = expectation_values(Jmax, sigma, strength, B, D)
        tt, cos2 = exp_val.cos2(Cstor, Jweight)
        
        # plot
        exp_val.cos2plot(tt,cos2, mol.mol_str)

        ## Expectation value, rho
        if self.calcrho == 'on':
            print('Calculating rotational density. This may take a while.\n')
            ttt, theta, rho = exp_val.rho(Cstor, Jweight)
        else:
            theta = 0
            ttt = 0
            rho = 0
            print('Rotational density not calculated.\n')
        # end timer
        elapsed = time.time() - timer
        print('Program took ' + str(round(elapsed)) + ' s to run. \n')
        
        return tt*hbar/B*10**12, cos2, theta, ttt*hbar/B*10**12, rho
开发者ID:c-benko,项目名称:Molecular_Alignment,代码行数:48,代码来源:ffa_sim.py

示例2: InvPotentialVorticity

    psi = InvPotentialVorticity(omegaNew);
    u = -partialY(psi);
    v = partialX(psi);
    dOmega = domegadt(dt, omegaNew, (u,v,forcing));
    return(dOmega);


def diffusion(dt, fields, args):
    omegaNew = fields;

    diffOmega = spectralDiffusion(dt, omegaNew, args);

    return(diffOmega);


stepper = integrator(h, [dSystemdt], \
                [diffusion], calcMax_omega,1);

ion();
omega_n = omega;
psi_n = InvPotentialVorticity(omega_n);
u_n = -partialY(psi_n);
v_n = partialX(psi_n);
Energy = mean(u_n*u_n) + mean(v_n*v_n) ;
Enstrophy = mean(omega_n * omega_n);
Ttt = 0.0;
en = 0.0;
#figure(figsize= (10,8));
figure(figsize= (16,5));
subplot(121)

prev_t = 0;
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:32,代码来源:test22.py

示例3: amax

    print 'Gravity wave velocity: ', gravity_speed; 
    return amax((maximum,gravity_speed));


def calcPower(field):
    [x,y] = shape(field);
    power = zeros(y);

    for i in arange(x):
        power = power + abs(fft(field[i,:]));

    power = power/x;
    return log(power);

stepper_omega = integrator(h, [dudt,dvdt,dndt], [diffusion_SWE], calcMax_omega, dim=3);

ion();

figure(figsize= (18,6));

# making my own colormap
cdict = {
    'red'  :  ((0., 1., 1.), (0.5, 0.5, 0.5), (1., 0, 0)),
    'green':  ((0., 1., 1.), (0.5, 0.5, 0.5), (1., 0, 0)),
    'blue' :  ((0., 1., 1.), (0.5, 0.5, 0.5), (1., 0., 0.))
}
my_cmap = m.matplotlib.colors.LinearSegmentedColormap('my_colormap', cdict, 1024)

# making my own colormap
cdict_vapor = {
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:30,代码来源:testEqGravity.py

示例4: sqrt

    (beta,u,v) = args;
    maximum = sqrt(amax(amax(u*u),amax(v*v)));
    return maximum;


def calcPower(field):
    [x,y] = shape(field);
    power = zeros(y);

    for i in arange(x):
        power = power + abs(fft(field[i,:]));

    power = power/x;
    return log(power);

stepper_omega = integrator(h, [dudt_omega], [diffusion_omega], calcMax_omega);
stepper_vapor = integrator(h, [dudt_vapor], [diffusion_vapor], calcMax_vapor);

ion();
k = linspace(1,128,128);
vapor_n = vapor;
omega_n = omega;
rh = zeros((N,N/2-1));
beta = 2.0;

dy = 2*pi/N;
qs = zeros((N/2-1,1));
q0 = 0.3;

for i in arange(N/2-1):
    qs[N/2-i-2] = beta*dy*i + q0;
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:31,代码来源:testVaporDyn-sine.py

示例5: calcPower

    print 'Gravity wave velocity: ', gravity_speed; 
    return 4*amax((maximum,gravity_speed));


def calcPower(field):
    [x,y] = shape(field);
    power = zeros(y);

    for i in arange(x):
        power = power + abs(fft(field[i,:]));

    power = power/x;
    return log(power);

stepper_omega = integrator(hx, [dSystemdt], [diffusion_SWE], calcMax_omega, dim=3);

ion();


prev_t = 0;

omega_n = (u,v,n);
#jet();

if(resume > 0):
   print 'Resuming from step: ',resume;
   eta = \
   np.load(path+'/eta_data_'+str(resume)+'.npy');

   u = np.load(path+'/uVel_data_'+str(resume)+'.npy');
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:30,代码来源:testEBeta.py

示例6: fourier

    uHat = fourier(u);
    numvals = len(u);
    threshold = int(numvals/3);
    uHat[threshold:2*numvals/3] = 0;
    k = array(range(N), dtype=complex128) - N/2;
    k = ifftshift(k);
    k = 0.01*(k**2);
    k = -k*dt;
    multiplier = exp(k);
    uHat = uHat*multiplier;
    return real(invFourier(uHat));

def calcMax(u, args):
    return sqrt(amax(u*u));

stepper = integrator(h, [dudt], [diffusion], calcMax);
ion();
vn = v;
subplot(211);
handle, = plot(abs(fourier(v)));
subplot(212);
handle2, = plot(t,v);

tn = 0;
sec = 1;
while (sec < 30):
    (tn,vn) = stepper.integrate(tn,vn);
    if(tn > sec):
        handle.set_ydata((fourier(vn).real));
        handle2.set_ydata(vn);
        sec = sec+1;
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:31,代码来源:testIntegrator.py

示例7: sin

#v = sin(t)+2*sin(t/4)+3*cos(t);

def dudt(dt, u, args):
    """ du/dt = -u*u_x 
    """
#    return 0;
    return real(-u*partialX(u));


def calcMax(u, args):
    return amax((0.2,sqrt(amax(u*u))));

for i in arange(N):
    v[i,:] = 0.1*sin(t[i])*cos(t);

stepper = integrator(h, [dudt], [spectralDiffusion], calcMax);
ion();
vn = v;
subplot(211);
handle = imshow(abs(fft2(v)));
subplot(212);
handle2 = imshow(v.transpose());
show();

tn = 0;
sec = 1;
while (sec < 500):
    (tn,vn) = stepper.integrate(tn,vn);
    if(tn > sec):
        print 'Time elapsed: ', tn;
        handle.set_array(abs(fft2(vn)));
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:31,代码来源:test2dDiffusion.py

示例8: integrator

from mynet import *
from scipy import signal
from integrator import *
from scipy.integrate import odeint
import numpy as np
import matplotlib.pyplot as plt

K = 4
X0 = -1 * np.ones((K, 2))
dt = 0.1
fs = 1 / dt
Nsteps = 10000
myintegrator = integrator(dt, Nsteps)
mynet = net(K)

# stimulation function
def mysin(x):
    if x > tstart and x <= period + tstart:
        return amp * np.sin(2 * np.pi * freq * (x - tstart) ** 2 / (2 * period)) + I0
    else:
        return I0


amp = 0.1  # ampplitude of stimulation
tstart = 100.0  # begining of stimulation
period = 400.0
freq = 0.4
I0 = 0.0  # dc
time = np.arange(Nsteps) * dt
nstart = int(tstart / dt)
nstop = int((tstart + period) / dt)
开发者ID:ulisespereira,项目名称:powerspectranet,代码行数:31,代码来源:main.py

示例9: amax

    print 'Gravity wave velocity: ', gravity_speed; 
    return amax((maximum,gravity_speed));


def calcPower(field):
    [x,y] = shape(field);
    power = zeros(y);

    for i in arange(x):
        power = power + abs(fft(field[i,:]));

    power = power/x;
    return log(power);

stepper_omega = integrator(h, [dOmegadt], [diffusion_SWE], calcMax_omega, dim=3);

ion();

figure(figsize= (18,6));

# making my own colormap
cdict = {
    'red'  :  ((0., 1., 1.), (0.5, 0.5, 0.5), (1., 0, 0)),
    'green':  ((0., 1., 1.), (0.5, 0.5, 0.5), (1., 0, 0)),
    'blue' :  ((0., 1., 1.), (0.5, 0.5, 0.5), (1., 0., 0.))
}
my_cmap = m.matplotlib.colors.LinearSegmentedColormap('my_colormap', cdict, 1024)

# making my own colormap
cdict_vapor = {
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:30,代码来源:testNLLE-1d.py

示例10: sin

    inp[:,i] = sin(2*pi*j/N);

deriv = coupledDerivative(N,4,2*pi,2*pi);

def dudt(dt,u,args):

    return -u*deriv.partialX(u);

def diffusion(dt, u, args):
    return u;

def calcMax_omega(u,args):

    return amax(amax(u));

stepper_omega = integrator(h, [dudt], [diffusion], calcMax_omega);

ion();
output, =  plot(inp[:,1]);
#hold(True);
#plot(deriv.partialX(inp)[:,1]);
#draw();
#raw_input();
#exit();

while(1):

    print shape(inp);
    (dt, inp) = stepper_omega.integrate(0, inp,(),0);
    print shape(inp);
    output.set_ydata(inp[:,1]);
开发者ID:anirban89,项目名称:My-Masters_Code,代码行数:31,代码来源:testBurgers.py


注:本文中的integrator函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。