Пример #1
0
def initialize():
    pos, vel, Ie, W_elec, idx = init.initialize_particles()
    B, E_int = init.initialize_fields()
    DT, max_inc, data_iter = aux.set_timestep(vel)

    if data_iter == 0:
        data_iter = max_inc

    q_dens, Ji = sources.collect_moments(vel, Ie, W_elec, idx)

    E_int, Ve, Te = fields.calculate_E(B, Ji, q_dens)
    vel = particles.velocity_update(pos, vel, Ie, W_elec, idx, B, E_int,
                                    -0.5 * DT)
    return pos, vel, Ie, W_elec, idx, B, E_int, q_dens, Ji, Ve, Te, DT, max_inc, data_iter
Пример #2
0
import auxilliary_1D as aux
import particles_1D as particles
import fields_1D as fields
import sources_1D as sources
import save_routines as save
import pdb
from simulation_parameters_1D import save_particles, save_fields, te0_equil

if __name__ == '__main__':
    start_time = timer()

    # Initialize simulation: Allocate memory and set time parameters
    print('Initializing arrays...')
    pos, vel, Ie, W_elec, Ib, W_mag, idx, Ep, Bp, temp_N = init.initialize_particles(
    )
    B, E_int, E_half, Ve, Te, Te0 = init.initialize_fields()
    q_dens, q_dens_adv, Ji, ni, nu = init.initialize_source_arrays()
    old_particles, old_fields, temp3De, temp3Db, temp1D,\
                                v_prime, S, T, mp_flux  = init.initialize_tertiary_arrays()

    print('Collecting initial moments...')
    # Collect initial moments and save initial state
    sources.collect_moments(vel, Ie, W_elec, idx, q_dens, Ji, ni, nu)

    if te0_equil == 1:
        init.set_equilibrium_te0(q_dens, Te0)

    DT, max_inc, part_save_iter, field_save_iter, B_damping_array, E_damping_array\
        = init.set_timestep(vel, Te0)

    fields.calculate_E(B, Ji, q_dens, E_int, Ve, Te, Te0, temp3De, temp3Db,
Пример #3
0
## HYBRID MODULES ##
import init_1D as init
import auxilliary_1D as aux
import particles_1D as particles
import fields_1D as fields
import sources_1D as sources
import save_routines as save

from simulation_parameters_1D import generate_data, NX

if __name__ == '__main__':
    start_time = timer()

    pos, vel, Ie, W_elec, idx = init.initialize_particles()
    B, E_int = init.initialize_fields()

    DT, max_inc, data_iter = aux.set_timestep(vel)
    print 'Timestep: %.4fs, %d iterations total' % (DT, max_inc)
    if generate_data == 1:
        save.store_run_parameters(DT, data_iter)

    q_dens, Ji = sources.collect_moments(vel, Ie, W_elec, idx)

    E_int, Ve, Te = fields.calculate_E(B, Ji, q_dens)
    vel = particles.velocity_update(pos, vel, Ie, W_elec, idx, B, E_int,
                                    -0.5 * DT)

    qq = 0
    while qq < max_inc:
        # Check timestep
Пример #4
0
import particles_1D  as particles
import fields_1D     as fields
import sources_1D    as sources
import save_routines as save

import pdb, sys
#import diagnostics   as diag

from simulation_parameters_1D import adaptive_timestep, save_particles, save_fields


if __name__ == '__main__':
    start_time = timer()

    pos, vel, Ie, W_elec, idx = init.initialize_particles()
    B, E                      = init.initialize_fields()

    DT, max_inc, part_save_iter, field_save_iter, subcycles = aux.set_timestep(vel)

    print('Loading initial state...\n')
    pos, Ie, W_elec, dns_int, dns_half, J_plus, J_minus, G, L   = sources.init_collect_moments(pos, vel, Ie, W_elec, idx, 0.5*DT)
                                               #J_init?? Should be J
    qq      = 0
    print('Starting loop...')
    while qq < max_inc:
        #print('Timestep', qq)
        ############################
        ##### EXAMINE TIMESTEP #####
        ############################
        if adaptive_timestep == 1:
            pos, qq, DT, max_inc, part_save_iter, field_save_iter, change_flag, subcycles = aux.check_timestep(qq, DT, pos, vel, B, E, dns_int, max_inc, part_save_iter, field_save_iter, subcycles)