projects template

This commit is contained in:
Elinorre 2020-03-02 18:53:21 +03:00
parent e021519f51
commit 1b96d697df
25 changed files with 225 additions and 107 deletions

View File

@ -62,5 +62,22 @@
"description_education": "Some of the students participating in the group study at the Scientific and Educational Center of the INR RAS.", "description_education": "Some of the students participating in the group study at the Scientific and Educational Center of the INR RAS.",
"title_iki": "SRI RAS", "title_iki": "SRI RAS",
"description_iki": "The group is involved in the mathematical modeling of electrical discharges in the atmosphere." } "description_iki": "The group is involved in the mathematical modeling of electrical discharges in the atmosphere." }
} },
"physics": {
"bc_title": "Physics",
"title": "Nuclear physics",
"description": "Traditionally, nuclear physics includes not only research related to the structure of the atomic nucleus and nuclear reactions, but also the entire physics of elementary particles, as well as partly some sections of astrophysics and cosmology. Currently, the efforts of our group are concentrated in the field of so-called non-accelerator experiments in elementary particle physics." },
"education": {
"bc_title": "Education",
"title": "Education",
"description": "Educational projects in the field of nuclear physics and methods for conducting and analyzing the results of a physical experiment are one of the key activities of the group." },
"math": {
"bc_title": "Maths",
"title": "Mathematical methods",
"description": "Mathematical modeling of physical processes and mathematical methods of data analysis are an integral part of modern experimental physics. There is a constant need for both improving existing methods and developing fundamentally new approaches." },
"software": {
"bc_title": "Software",
"title": "Scientific software",
"description": "Modern experiments in particle physics are inconceivable without special software, which is required both at the stage of the experiment and data collection, and in processing the results. The development of scientific software is an additional, but significant area of work for the group." }
} }

View File

@ -62,5 +62,22 @@
"description_education": "Часть студентов, участвующих в группе обучается в научно-образовательном центре ИЯИ РАН.", "description_education": "Часть студентов, участвующих в группе обучается в научно-образовательном центре ИЯИ РАН.",
"title_iki": "ИКИ РАН", "title_iki": "ИКИ РАН",
"description_iki": "Группа участвует в математическом моделировании электрических разрядов в атмосфере." } "description_iki": "Группа участвует в математическом моделировании электрических разрядов в атмосфере." }
} },
"physics": {
"bc_title": "Физика",
"title": "Ядерная физика",
"description": "Традиционно к ядерной физике относят не только исследования, связанные со структурой атомного ядра и ядерными реакциями, но и всю физику элементарных частиц, а также отчасти некоторые разделы астрофизики и космологии. В настоящее время усилия нашей группы сосредоточены в области так называемых неускорительных экспериментов в физике элементарных частиц." },
"education": {
"bc_title": "Образование",
"title": "Образование",
"description": "Образовательные проекты в побласти ядерной физики и методов проведения и анализа результатов физического эксперимента являются одним из ключевых направлений деятельности группы." },
"math": {
"bc_title": "Математика",
"title": "Математические методы",
"description": "Математическое моделирование физических процессов и математические методы анализа данных являются неотъемлимой частью современной экспериментальной физики. Постоянно возникает потребность как в совершенствовании существующих методов, так и в разработке принципиально новых подходов." },
"software": {
"bc_title": "Программное обеспечение",
"title": "Научное программное обеспечение",
"description": "Современные эксперименты в физике частиц немыслимы без специального программного обеспечения, которое требуется как на этапе проведения эксперимента и сбора данных, так и при обработке результатов. Разработка научного программного обеспечения является дополнительным, но существенным направлением работы группы." }
} }

View File

@ -6,5 +6,6 @@ title: Статистические методы в эксперименталь
courseName: stat-methods courseName: stat-methods
order: 2 order: 2
published: true published: true
language: ru
--- ---
Семестровый курс по выбору для студентов 2-4 курсов. Семестровый курс по выбору для студентов 2-4 курсов.

View File

@ -6,6 +6,7 @@ title: История атомного проекта
courseName: atom courseName: atom
order: 3 order: 3
published: true published: true
language: ru
--- ---
История атомного проекта СССР из первых рук. История атомного проекта СССР из первых рук.

View File

@ -6,5 +6,6 @@ title: Введение в научное программирование на
courseName: kotlin courseName: kotlin
order: 9 order: 9
published: true published: true
language: ru
--- ---
Факультативный курс для всех желающих. Факультативный курс для всех желающих.

View File

@ -6,6 +6,7 @@ title: Лабораторные работы на кафедре общей фи
courseName: biref courseName: biref
order: 10 order: 10
published: true published: true
language: ru
--- ---
Группа участвует в усовершенствовании лабораторных работ на кафедре общей физики МФТИ. Группа участвует в усовершенствовании лабораторных работ на кафедре общей физики МФТИ.

View File

@ -6,6 +6,7 @@ title: Курс по экспериментам, проводимым в низ
courseName: subterranean courseName: subterranean
order: 1 order: 1
published: true published: true
language: ru
--- ---
Курс содержит краткое введение в физику частиц и ядра, которое дополняет программу курса общей физики V семестра. Рассматриваются проблемы современной физики нейтрино: масса покоя, осцилляции, нарушение лептонного числа, стерильные нейтрино. Излагаются новейшие методы исследования нейтрино различного происхождения — детектирование реакторных, солнечных, атмосферных, ускорительных, галактических и гео-нейтрино. Дается обзор подземных, подводных и подледных лабораторий мира, где ведутся низкофоновые эксперименты по физике частиц и астрофизике. Курс содержит краткое введение в физику частиц и ядра, которое дополняет программу курса общей физики V семестра. Рассматриваются проблемы современной физики нейтрино: масса покоя, осцилляции, нарушение лептонного числа, стерильные нейтрино. Излагаются новейшие методы исследования нейтрино различного происхождения — детектирование реакторных, солнечных, атмосферных, ускорительных, галактических и гео-нейтрино. Дается обзор подземных, подводных и подледных лабораторий мира, где ведутся низкофоновые эксперименты по физике частиц и астрофизике.

View File

@ -5,6 +5,7 @@ shortTitle: Обратные задачи
title: Статистическая регуляризация некорректных обратных задач title: Статистическая регуляризация некорректных обратных задач
order: 1 order: 1
published: true published: true
language: ru
--- ---
Одной из задач, решаемых группой, является популяризация и развитие метода статистической регуляризации, созданного В.Ф. Турчинным в 70-х годах XX века. Одной из задач, решаемых группой, является популяризация и развитие метода статистической регуляризации, созданного В.Ф. Турчинным в 70-х годах XX века.

View File

@ -5,6 +5,7 @@ shortTitle: Функции значимости
title: Оптимальное планирование эксперимента при помощи функций значимости параметров title: Оптимальное планирование эксперимента при помощи функций значимости параметров
order: 2 order: 2
published: true published: true
language: ru
--- ---
<table> <table>
<tbody><tr><td> <tbody><tr><td>

View File

@ -5,6 +5,7 @@ shortTitle: GERDA
title: Международный эксперимент GERDA title: Международный эксперимент GERDA
order: 1 order: 1
published: true published: true
language: ru
--- ---
Эксперимент GERDA (GERmanium Detector Array), реализуемый в Национальной Лаборатории Гран Сассо в Италии, создан для поиска двойного безнейтринного бета-распада Ge-76. В GERDA применяются детекторы из германия, обогащенного изотопом Ge-76. Детекторы погружены в жидкий аргон, который охлаждает их до рабочей температуры (87 К) и, одновременно, служит дополнительной защитой от фонового излучения. Эксперимент проводится в несколько этапов или фаз. На данный момент закончилась вторая фаза эксперимента и планируется третья. Эксперимент GERDA (GERmanium Detector Array), реализуемый в Национальной Лаборатории Гран Сассо в Италии, создан для поиска двойного безнейтринного бета-распада Ge-76. В GERDA применяются детекторы из германия, обогащенного изотопом Ge-76. Детекторы погружены в жидкий аргон, который охлаждает их до рабочей температуры (87 К) и, одновременно, служит дополнительной защитой от фонового излучения. Эксперимент проводится в несколько этапов или фаз. На данный момент закончилась вторая фаза эксперимента и планируется третья.

View File

@ -5,6 +5,7 @@ shortTitle: IAXO
title: Международная коллаборация IAXO title: Международная коллаборация IAXO
order: 6 order: 6
published: false published: false
language: ru
--- ---
**IAXO** (International Axion Observatory) - это новое поколение аксионного гелиоскопа, чья основная задача - обнаружение аксионов (или других элементарных частиц), в большом количестве излучаемых ядром Солнца. **IAXO** (International Axion Observatory) - это новое поколение аксионного гелиоскопа, чья основная задача - обнаружение аксионов (или других элементарных частиц), в большом количестве излучаемых ядром Солнца.

View File

@ -5,6 +5,7 @@ shortTitle: Мюонный монитор
title: Мюонный монитор для подземных низкофоновых экспериментов title: Мюонный монитор для подземных низкофоновых экспериментов
order: 2 order: 2
published: true published: true
language: ru
--- ---
**Расположение:** Испания, Канфранк-Эстасьон(Canfranc-Estación), **Расположение:** Испания, Канфранк-Эстасьон(Canfranc-Estación),
подземная лаборатория в Канфранке(LSC Laboratorio Subterráneo de подземная лаборатория в Канфранке(LSC Laboratorio Subterráneo de

View File

@ -5,6 +5,7 @@ shortTitle: Троицк ню-масс
title: Установка по поиску массы нейтрино Троицк ню-масс title: Установка по поиску массы нейтрино Троицк ню-масс
order: 3 order: 3
published: true published: true
language: ru
--- ---
<img src="/images/projects/physics/spectrometer900.jpg" alt="spectrometer"/> <img src="/images/projects/physics/spectrometer900.jpg" alt="spectrometer"/>

View File

@ -5,5 +5,6 @@ shortTitle: Спектаторная материя
title: Спектаторная материя title: Спектаторная материя
order: 5 order: 5
published: false published: false
language: ru
--- ---

View File

@ -5,6 +5,7 @@ shortTitle: TGE/TGF
title: Изучение TGE и TGF title: Изучение TGE и TGF
order: 4 order: 4
published: false published: false
language: ru
--- ---
**Наземные гамма-вспышки (TGF) и переходное гамма-излучение (TGE)** - загадочные явления, происходящие в атмосфере и регистрируемые на Земле. Для того чтобы объяснить их, используется механизм **RREA** (Relativistic Runaway Electron Avalanche), который также может объяснить возникновение молний. **Наземные гамма-вспышки (TGF) и переходное гамма-излучение (TGE)** - загадочные явления, происходящие в атмосфере и регистрируемые на Земле. Для того чтобы объяснить их, используется механизм **RREA** (Relativistic Runaway Electron Avalanche), который также может объяснить возникновение молний.

View File

@ -5,6 +5,7 @@ shortTitle: Двулучепреломление
title: Анализ данных в лабораторной работе по двулучепреломлению title: Анализ данных в лабораторной работе по двулучепреломлению
order: 100 order: 100
published: true published: true
language: ru
--- ---
Обработка лабораторной работы по двулучепреломлению с двойной реализацией на Kotlin-JVM/JFreeChart и Kotlin-JS/Plotly. Обработка лабораторной работы по двулучепреломлению с двойной реализацией на Kotlin-JVM/JFreeChart и Kotlin-JS/Plotly.

View File

@ -5,6 +5,7 @@ shortTitle: DataForge
title: Система автоматизированной обработки данных DataForge title: Система автоматизированной обработки данных DataForge
order: 1 order: 1
published: true published: true
language: ru
--- ---
[DataForge](/dataforge) - это современная платформа для сбора и анализа данных, созданная для автоматизации обработки данных в физических экспериментах и не только. [DataForge](/dataforge) - это современная платформа для сбора и анализа данных, созданная для автоматизации обработки данных в физических экспериментах и не только.

View File

@ -5,6 +5,7 @@ shortTitle: Kmath
title: Экспериментальная математическая библиотека на kotlin title: Экспериментальная математическая библиотека на kotlin
order: 2 order: 2
published: true published: true
language: ru
--- ---
Экспериментальная библиотека для математических операций на kotlin, построенная по принципу контекстно-ориентированного Экспериментальная библиотека для математических операций на kotlin, построенная по принципу контекстно-ориентированного

View File

@ -5,6 +5,7 @@ shortTitle: Моделирование Muon Monitor
title: Модель для анализа данных эксперимента Muon Monitor title: Модель для анализа данных эксперимента Muon Monitor
order: 9 order: 9
published: true published: true
language: ru
--- ---
Моделирование и графическая визуализация регистрации мюонов в эксперименте Muon Monitor написанные на языке Kotlin. Моделирование и графическая визуализация регистрации мюонов в эксперименте Muon Monitor написанные на языке Kotlin.

View File

@ -5,6 +5,7 @@ shortTitle: Семинар по программированию
title: Программирование в экспериментальной физике title: Программирование в экспериментальной физике
order: 3 order: 3
published: true published: true
language: ru
--- ---
Не секрет, что проведение и анализ данных современного физического эксперимента практически на каждом этапе связаны Не секрет, что проведение и анализ данных современного физического эксперимента практически на каждом этапе связаны

View File

@ -5,6 +5,7 @@ shortTitle: Моделирование RL-TGE
title: Макро-моделирование для реакторной модели в физике атмосферы title: Макро-моделирование для реакторной модели в физике атмосферы
order: 10 order: 10
published: true published: true
language: ru
--- ---
Макро-симуляция для реакторной модели в физике электронных лавин в атмосфере на языке Kotlin. Макро-симуляция для реакторной модели в физике электронных лавин в атмосфере на языке Kotlin.

View File

@ -1,37 +1,42 @@
import React from "react" import React from "react"
import { Link, graphql } from "gatsby" import { graphql } from "gatsby"
import { FormattedMessage, Link, useIntl, injectIntl } from "gatsby-plugin-intl"
import Layout from "../../components/layout" import Layout from "../../components/layout"
import SEO from "../../components/seo"
const PhysicsPage = (props) => { const SoftwarePage = ({ data }) => {
const {data} = props; const intl = useIntl()
const lang = intl.locale
var posts = ""
if ( lang==="ru" ) { posts = data.ru_projects.edges; }
else if ( lang==="en" ) { posts = data.en_projects.edges; }
return( return(
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({ id: "title" })} />
<ul className="nav nav-tabs"> <ul className="nav nav-tabs">
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/physics">Физика</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/physics"><FormattedMessage id="physics.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link active" to="./projects/education">Образование</Link></li> <li className="nav-item"><Link id="project" className="nav-link active" to="/projects/education"><FormattedMessage id="education.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/math">Математика</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/math"><FormattedMessage id="math.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/software">Программное обеспечение</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/software"><FormattedMessage id="software.bc_title"/></Link></li>
</ul> </ul>
<h1 style = {{marginTop: `20px`}}> Образовательные проекты </h1> <h1 style = {{marginTop: `20px`}}><FormattedMessage id="education.title"/></h1>
<p style={{marginBottom: `5px`}}>Образовательные проекты в побласти ядерной <p style={{marginBottom: `5px`}}><FormattedMessage id="education.description"/></p>
физики и методов проведения и анализа результатов физического эксперимента
являются одним из ключевых направлений деятельности группы.</p>
<ul> <ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const link = project.frontmatter.shortTitle; const link = node.frontmatter.shortTitle;
const id = project.frontmatter.id; const id = node.frontmatter.id;
return( return(
<li><Link to={`projects/education#${id}`}>{link}</Link></li> <li><Link to={`projects/education#${id}`}>{link}</Link></li>
) )
})} })}
</ul> </ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const title = project.frontmatter.title; const title = node.frontmatter.title;
const id = project.frontmatter.id; const id = node.frontmatter.id;
const courseName = project.frontmatter.courseName;
return( return(
<div className="row" id={id}> <div className="row" id={id}>
<div className="col-lg-12"> <div className="col-lg-12">
@ -39,16 +44,9 @@ const PhysicsPage = (props) => {
<h2 name={id}>{title}</h2> <h2 name={id}>{title}</h2>
<p <p
dangerouslySetInnerHTML = {{ dangerouslySetInnerHTML = {{
__html: project.html, __html: node.html,
}} }}
/> />
<div className="card" style={{backgroundColor: `#F5F5F5`}}>
<div className="card-body" style={{padding: `10px`}}>
<p style={{textAlign: `center`, margin: `5px`}}>
Подробная информация доступна на <Link to={`./pages/${courseName}`}>странице курса</Link>
</p>
</div>
</div>
</div> </div>
</div> </div>
) )
@ -57,21 +55,34 @@ const PhysicsPage = (props) => {
) )
} }
export default PhysicsPage export default injectIntl(SoftwarePage)
export const query = graphql` export const query = graphql`
query{ query{
projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_education"}, published: {eq: true}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_education"}, published: {eq: true}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
nodes{ edges{
node{
html html
frontmatter{ frontmatter{
shortTitle shortTitle
title title
id id
courseName
} }
} }
} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_education"}, published: {eq: true}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){
edges{
node{
html
frontmatter{
shortTitle
title
id
}
}
}}
} }
` `

View File

@ -1,38 +1,42 @@
import React from "react" import React from "react"
import { Link, graphql } from "gatsby" import { graphql } from "gatsby"
import { FormattedMessage, Link, useIntl, injectIntl } from "gatsby-plugin-intl"
import Layout from "../../components/layout" import Layout from "../../components/layout"
import SEO from "../../components/seo"
const PhysicsPage = (props) => { const SoftwarePage = ({ data }) => {
const {data} = props; const intl = useIntl()
const lang = intl.locale
var posts = ""
if ( lang==="ru" ) { posts = data.ru_projects.edges; }
else if ( lang==="en" ) { posts = data.en_projects.edges; }
return( return(
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({ id: "title" })} />
<ul className="nav nav-tabs"> <ul className="nav nav-tabs">
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/physics">Физика</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/physics"><FormattedMessage id="physics.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/education">Образование</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/education"><FormattedMessage id="education.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link active" to="./projects/math">Математика</Link></li> <li className="nav-item"><Link id="project" className="nav-link active" to="/projects/math"><FormattedMessage id="math.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/software">Программное обеспечение</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/software"><FormattedMessage id="software.bc_title"/></Link></li>
</ul> </ul>
<h1 style = {{marginTop: `20px`}}> Математические методы </h1> <h1 style = {{marginTop: `20px`}}><FormattedMessage id="math.title"/></h1>
<p style={{marginBottom: `5px`}}>Математическое моделирование физических <p style={{marginBottom: `5px`}}><FormattedMessage id="math.description"/></p>
процессов и математические методы анализа данных являются неотъемлимой
частью современной экспериментальной физики. Постоянно возникает потребность
как в совершенствовании существующих методов, так и в разработке принципиально
новых подходов.</p>
<ul> <ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const link = project.frontmatter.shortTitle; const link = node.frontmatter.shortTitle;
const id = project.frontmatter.id; const id = node.frontmatter.id;
return( return(
<li><Link to={`projects/math#${id}`}>{link}</Link></li> <li><Link to={`projects/math#${id}`}>{link}</Link></li>
) )
})} })}
</ul> </ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const title = project.frontmatter.title; const title = node.frontmatter.title;
const id = project.frontmatter.id; const id = node.frontmatter.id;
return( return(
<div className="row" id={id}> <div className="row" id={id}>
<div className="col-lg-12"> <div className="col-lg-12">
@ -40,7 +44,7 @@ const PhysicsPage = (props) => {
<h2 name={id}>{title}</h2> <h2 name={id}>{title}</h2>
<p <p
dangerouslySetInnerHTML = {{ dangerouslySetInnerHTML = {{
__html: project.html, __html: node.html,
}} }}
/> />
</div> </div>
@ -51,13 +55,14 @@ const PhysicsPage = (props) => {
) )
} }
export default PhysicsPage export default injectIntl(SoftwarePage)
export const query = graphql` export const query = graphql`
query{ query{
projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_math"}, published: {eq: true}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_math"}, published: {eq: true}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
nodes{ edges{
node{
html html
frontmatter{ frontmatter{
shortTitle shortTitle
@ -65,6 +70,19 @@ export const query = graphql`
id id
} }
} }
} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_math"}, published: {eq: true}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){
edges{
node{
html
frontmatter{
shortTitle
title
id
}
}
}}
} }
` `

View File

@ -1,38 +1,42 @@
import React from "react" import React from "react"
import { Link, graphql } from "gatsby" import { graphql } from "gatsby"
import Layout from "../../components/layout" import { FormattedMessage, Link, useIntl, injectIntl } from "gatsby-plugin-intl"
const PhysicsPage = (props) => { import Layout from "../../components/layout"
const {data} = props; import SEO from "../../components/seo"
const PhysicsPage = ({ data }) => {
const intl = useIntl()
const lang = intl.locale
var posts = ""
if ( lang==="ru" ) { posts = data.ru_projects.edges; }
else if ( lang==="en" ) { posts = data.en_projects.edges; }
return( return(
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({ id: "title" })} />
<ul className="nav nav-tabs"> <ul className="nav nav-tabs">
<li className="nav-item"><Link id="project" className="nav-link active" to="./projects/physics">Физика</Link></li> <li className="nav-item"><Link id="project" className="nav-link active" to="/projects/physics"><FormattedMessage id="physics.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/education">Образование</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/education"><FormattedMessage id="education.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/math">Математика</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/math"><FormattedMessage id="math.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/software">Программное обеспечение</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/software"><FormattedMessage id="software.bc_title"/></Link></li>
</ul> </ul>
<h1 style = {{marginTop: `20px`}}> Ядерная физика </h1> <h1 style = {{marginTop: `20px`}}><FormattedMessage id="physics.title"/></h1>
<p style={{marginBottom: `5px`}}>Традиционно к ядерной физике относят не только исследования, связанные со структурой <p style={{marginBottom: `5px`}}><FormattedMessage id="physics.description"/></p>
атомного ядра и ядерными реакциями, но и всю физику элементарных частиц,
а также отчасти некоторые разделы астрофизики и космологии.
В настоящее время усилия нашей группы сосредоточены в области так называемых неускорительных
экспериментов в физике элементарных частиц.</p>
<ul> <ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const link = project.frontmatter.shortTitle; const link = node.frontmatter.shortTitle;
const id = project.frontmatter.id; const id = node.frontmatter.id;
return( return(
<li><Link to={`projects/physics#${id}`}>{link}</Link></li> <li><Link to={`/projects/physics#${id}`}>{link}</Link></li>
) )
})} })}
</ul> </ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const title = project.frontmatter.title; const title = node.frontmatter.title;
const id = project.frontmatter.id; const id = node.frontmatter.id;
return( return(
<div className="row" id={id}> <div className="row" id={id}>
<div className="col-lg-12"> <div className="col-lg-12">
@ -40,7 +44,7 @@ const PhysicsPage = (props) => {
<h2 name={id}>{title}</h2> <h2 name={id}>{title}</h2>
<p <p
dangerouslySetInnerHTML = {{ dangerouslySetInnerHTML = {{
__html: project.html, __html: node.html,
}} }}
/> />
</div> </div>
@ -51,13 +55,14 @@ const PhysicsPage = (props) => {
) )
} }
export default PhysicsPage export default injectIntl(PhysicsPage)
export const query = graphql` export const query = graphql`
query{ query{
projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_physics"}, published: {eq: true}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_physics"}, published: {eq: true}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
nodes{ edges{
node{
html html
frontmatter{ frontmatter{
shortTitle shortTitle
@ -65,6 +70,19 @@ export const query = graphql`
id id
} }
} }
} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_physics"}, published: {eq: true}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){
edges{
node{
html
frontmatter{
shortTitle
title
id
}
}
}}
} }
` `

View File

@ -1,38 +1,42 @@
import React from "react" import React from "react"
import { Link, graphql } from "gatsby" import { graphql } from "gatsby"
import { FormattedMessage, Link, useIntl, injectIntl } from "gatsby-plugin-intl"
import Layout from "../../components/layout" import Layout from "../../components/layout"
import SEO from "../../components/seo"
const PhysicsPage = (props) => { const SoftwarePage = ({ data }) => {
const {data} = props; const intl = useIntl()
const lang = intl.locale
var posts = ""
if ( lang==="ru" ) { posts = data.ru_projects.edges; }
else if ( lang==="en" ) { posts = data.en_projects.edges; }
return( return(
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({ id: "title" })} />
<ul className="nav nav-tabs"> <ul className="nav nav-tabs">
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/physics">Физика</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/physics"><FormattedMessage id="physics.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/education">Образование</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/education"><FormattedMessage id="education.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="./projects/math">Математика</Link></li> <li className="nav-item"><Link id="project" className="nav-link " to="/projects/math"><FormattedMessage id="math.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link active" to="./projects/software">Программное обеспечение</Link></li> <li className="nav-item"><Link id="project" className="nav-link active" to="/projects/software"><FormattedMessage id="software.bc_title"/></Link></li>
</ul> </ul>
<h1 style = {{marginTop: `20px`}}> Научное программное обеспечение </h1> <h1 style = {{marginTop: `20px`}}><FormattedMessage id="software.title"/></h1>
<p style={{marginBottom: `5px`}}>Современные эксперименты в физике частиц <p style={{marginBottom: `5px`}}><FormattedMessage id="software.description"/></p>
немыслимы без специального программного обеспечения, которое требуется как
на этапе проведения эксперимента и сбора данных, так и при обработке результатов.
Разработка научного программного обеспечения является дополнительным,
но существенным направлением работы группы.</p>
<ul> <ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const link = project.frontmatter.shortTitle; const link = node.frontmatter.shortTitle;
const id = project.frontmatter.id; const id = node.frontmatter.id;
return( return(
<li><Link to={`projects/software#${id}`}>{link}</Link></li> <li><Link to={`projects/software#${id}`}>{link}</Link></li>
) )
})} })}
</ul> </ul>
{data.projects.nodes.map(project => { {posts.map(({node}) => {
const title = project.frontmatter.title; const title = node.frontmatter.title;
const id = project.frontmatter.id; const id = node.frontmatter.id;
return( return(
<div className="row" id={id}> <div className="row" id={id}>
<div className="col-lg-12"> <div className="col-lg-12">
@ -40,7 +44,7 @@ const PhysicsPage = (props) => {
<h2 name={id}>{title}</h2> <h2 name={id}>{title}</h2>
<p <p
dangerouslySetInnerHTML = {{ dangerouslySetInnerHTML = {{
__html: project.html, __html: node.html,
}} }}
/> />
</div> </div>
@ -51,13 +55,14 @@ const PhysicsPage = (props) => {
) )
} }
export default PhysicsPage export default injectIntl(SoftwarePage)
export const query = graphql` export const query = graphql`
query{ query{
projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_software"}, published: {eq: true}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_software"}, published: {eq: true}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
nodes{ edges{
node{
html html
frontmatter{ frontmatter{
shortTitle shortTitle
@ -65,6 +70,19 @@ export const query = graphql`
id id
} }
} }
} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_software"}, published: {eq: true}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){
edges{
node{
html
frontmatter{
shortTitle
title
id
}
}
}}
} }
` `