00001 /* 00002 This file belongs to Aeneas. Aeneas is a GNU package released under GPL 3. 00003 This code is a simulator for Submicron 3D Semiconductor Devices. 00004 It implements the Monte Carlo transport in 3D tetrahedra meshes 00005 for the simulation of the semiclassical Boltzmann equation for both electrons. 00006 It also includes all the relevant quantum effects for nanodevices. 00007 00008 Copyright (C) 2007 Jean Michel Sellier <sellier@dmi.unict.it> 00009 <aeneas@southnovel.eu> 00010 00011 This program is free software; you can redistribute it and/or modify 00012 it under the terms of the GNU General Public License as published by 00013 the Free Software Foundation; either version 3, or (at your option) 00014 any later version. 00015 00016 This program is distributed in the hope that it will be useful, 00017 but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00019 GNU General Public License for more details. 00020 00021 You should have received a copy of the GNU General Public License 00022 along with this program. If not, see <http://www.gnu.org/licenses/>. 00023 00024 ************************************************************************ 00025 00026 Created on : 06 june 2007 Siracusa, Jean Michel Sellier 00027 Last modified on : 16 september 2007 Siracusa, Jean Michel Sellier 00028 00029 Description : all the included files are called here 00030 00031 ************************************************************************ 00032 */ 00033 00034 #include "MonteCarlo/constants.h" 00035 #include "3D_finite_elements_P1/theta.h" 00036 #include "3D_finite_elements_P1/d_theta.h" 00037 #include "3D_finite_elements_P1/def_base_all.h" 00038 #include "3D_finite_elements_P1/detJ.h" 00039 #include "3D_finite_elements_P1/def_d_base_all.h" 00040 #include "3D_finite_elements_P1/def_global_weights_all.h" 00041 #include "3D_finite_elements_P1/define_inverse_jacobian.h" 00042 #include "3D_finite_elements_P1/define_d_base_K.h" 00043 #include "3D_finite_elements_P1/initialize_GAUSS.h" 00044 #include "read_write/load_mesh.h" 00045 #include "read_write/load_mshV1.h" 00046 #include "read_write/save_BB.h" 00047 #include "read_write/save_VTK.h" 00048 #include "read_write/save_particles_mesh_format.h" 00049 #include "read_write/save_particles_Point3D_format.h" 00050 #include "read_write/read_input_file.h" 00051 #include "linear_solver/dsprsax.h" 00052 #include "linear_solver/dsprstx.h" 00053 #include "linear_solver/atimes.h" 00054 #include "linear_solver/asolve.h" 00055 #include "linear_solver/snrm.h" 00056 #include "linear_solver/linbcg.h" 00057 #include "Poisson_3D/finite_element_3D_poisson.h" 00058 #include "Poisson_3D/assemble_matrix_A.h" 00059 #include "Poisson_3D/assemble_rhs_B.h" 00060 #include "Poisson_3D/electric_field.h" 00061 //#include "Poisson_3D/update_potential.h" 00062 #include "meshes/neighbourhood_table.h" 00063 #include "meshes/read_neighbourhood_table.h" 00064 #include "MonteCarlo/rnd.h" 00065 #include "MonteCarlo/montecarlo_setup.h" 00066 #include "MonteCarlo/device_setup.h" 00067 #include "MonteCarlo/scat.h" 00068 #include "MonteCarlo/drift.h" 00069 #include "MonteCarlo/creation.h" 00070 #include "MonteCarlo/ensemble_montecarlo.h" 00071 #include "MonteCarlo/electron_density.h" 00072 #include "MonteCarlo/electron_velocity.h" 00073 #include "services/initial_usefull_calculations.h" 00074 #include "quantum/Bohm_potential.h" 00075 //#include "GUI/draw.h" 00076 //#include "GUI/init_plot.h" 00077 //#include "GUI/reshape.h" 00078 //#include "GUI/mouse.h" 00079 //#include "GUI/keyboard.h"