Главная страница
Навигация по странице:

  • ExN02TrackingAction.cc (new_cos)

  • ExN02TrackingAction.hh (new_cos)

  • SPECTR.hh (new_cos)

  • Вычисление методом Монте-Карло. ВЫЧИСЛЕНИЕ МЕТОДОМ МОНТЕ-КАРЛО КОЛИЧЕСТВА ПЕРВИЧНЫХ ДЕФЕКТОВ В К. вычисление методом монтекарло количества первичных дефектов в кристаллическом кремнии, создаваемых протонами и нейтронами различных энергий


    Скачать 0.62 Mb.
    Названиевычисление методом монтекарло количества первичных дефектов в кристаллическом кремнии, создаваемых протонами и нейтронами различных энергий
    АнкорВычисление методом Монте-Карло
    Дата13.02.2022
    Размер0.62 Mb.
    Формат файлаdoc
    Имя файлаВЫЧИСЛЕНИЕ МЕТОДОМ МОНТЕ-КАРЛО КОЛИЧЕСТВА ПЕРВИЧНЫХ ДЕФЕКТОВ В К.doc
    ТипПояснительная записка
    #360814
    страница6 из 6
    1   2   3   4   5   6


    ExN02SteppingAction.hh (new_cos):

    #ifndef ExN02SteppingAction_h

    #define ExN02SteppingAction_h 1

    #include "G4UserSteppingAction.hh"

    #define MAXBIN 201

    #define MAXEVT 10000

    #include "macro.hh"

    extern int SPECTR_cost[MAXBIN];

    extern int Act, N;

    extern double X1, Y1, Z1, X2, Y2, Z2;

     

    class ExN02SteppingAction : public G4UserSteppingAction

    {

      public:

        ExN02SteppingAction();

       

    ExN02SteppingAction(){};

     

        void UserSteppingAction(const G4Step* aStep);

    };

    #endif

     

    ExN02TrackingAction.cc (new_cos):

    #include "ExN02TrackingAction.hh"

    #include "G4TrackingManager.hh"

    #include "G4Track.hh"

    #include "G4UnitsTable.hh"

     

    ExN02TrackingAction::ExN02TrackingAction()

    {

        N = 0;

        Act = 0;

    }

     

    void ExN02TrackingAction::PreUserTrackingAction(const G4Track* aTrack)

    {

        G4Track* Track = (G4Track*)aTrack;

        if (!aTrack->GetCreatorProcess()) {

            if (aTrack->GetPosition().x() == 0 &&

                aTrack->GetPosition().y() == 0 &&

                aTrack->GetPosition().z() == 0)

                Act = 0;

        } else

        if (Act==2 || aTrack->GetCreatorProcess()->GetProcessName()!=PROCESS_NAME) {

            //Track->SetKineticEnergy(0);

        }

    }

     

    ExN02TrackingAction.hh (new_cos):

    #ifndef ExN02TrackingAction_h

    #define ExN02TrackingAction_h 1

    #include "G4UserTrackingAction.hh"

    #include "G4String.hh"

    #include "macro.hh"

     

    extern int Act;

    extern int N;

     

    class ExN02TrackingAction : public G4UserTrackingAction {

      public:

        ExN02TrackingAction();

        virtual ExN02TrackingAction(){};

        virtual void PreUserTrackingAction(const G4Track* aTrack);

      private:

        int N;

        G4String name;

        G4String proc;

    };

    #endif

     

    SPECTR.hh (new_cos):

    #define MAXBIN 201

    #define MAXEVT 10000

    int SPECTR_cost[MAXBIN];

    int Act;

    double X1, Y1, Z1, X2, Y2, Z2;

    int N;

     

    macro.hh (new_cos):

    #ifndef PARTICLE_INCIDENT

    #define PARTICLE_INCIDENT "proton" // частица, для которой считаем угловое распределение

    #endif

     

    #ifndef PROCESS_NAME

    #define PROCESS_NAME "LElastic" // процесс, для которого считаем угл. распределение

    #endif

     

    #ifndef PARTICLE_PRODUCT1

    #define PARTICLE_PRODUCT1 "proton" // частица отдачи, для кот. считаем угловое распределение

    #endif

     

    Пример командного файла run1.mac для расчета энергетического спектра ядер отдачи от нейтронов с энергией 15 МэВ:

     

    /run/verbose 2

    /event/verbose 0

    /tracking/verbose 0

    /gun/particle neutron

    /gun/energy 15 MeV

    /run/beamOn 1000

    ЛИТЕРАТУРА

     

    1. Ф.П. Коршунов, Ю.В. Богатырев, В.А. Вавилов. Воздействие радиации на интегральные микросхемы.- Наука и техника, 1986, с. 256.

    2. http://wwwndc.tokai.jaeri.go.jp (данные о сечениях взаимодействия нейтронов с кремнием)

    3. http://t2.lanl.gov (данные о сечениях взаимодействия протонов с кремнием)

    4. Geant4 Physics Reference Manual

    (http://geant4.web.cern.ch/geant4/G4UsersDocuments/UsersGuides/PhysicsReferenceManual/html/PhysicsReferenceManual.html)

    5. Geant4 Installation Guide

    (http://geant4.web.cern.ch/geant4/G4UsersDocuments/UsersGuides/InstallationGuide/html/index.html)

    6. В.С. Вавилов, А.Е. Кив, О.Р. Ниязова. Механизмы образования и миграции дефектов в полупроводниках, М: Наука, 1981, с.368.

    7. Geant4 User’s Guide For Application Developers (http://geant4.web.cern.ch/geant4/G4UsersDocuments/UsersGuides/ForApplicationDeveloper/html/index.html)

    8. Ю.П. Гангрский, Ю.Ц. Оганесян, Ю.Э. Пенионжкевич, Г.М. Тер-Акопьян. Ядерные реакции с тяжелыми ионами: Учебное пособие М.: МИФИ, 1995, с. 108.

    9. Мухин К.Н. Экспериментальная ядерная физика: Учебник для вузов. Т. I. Физика атомного ядра.-М.: Энергоатомиздат, 1983, с. 616.

    10. Мухин К.Н. Экспериментальная ядерная физика: Учебник для вузов. Т. II. Физика элементарных частиц.-М.: Энергоатомиздат, 1983, с. 376.

    11. Кинчин Д., Пиз Р. Смещение атомов в твердых телах под действием излучения.-УНФ, 1956, с. 590-612.



    1   2   3   4   5   6


    написать администратору сайта