Файл: Российской федерации федеральное государственное автономное образовательное учреждение высшего образования.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 04.12.2023
Просмотров: 381
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
ХАРАКТЕРИСТИК НЕОДНОРОДНОЙ ТРУБЫ
Ватульян А. О.
1
, Нестеров С. А.
2
1
ФГАОУ ВО «Южный федеральный университет»,
Институт математики, механики и компьютерных наук
им. И. И. Воровича,
г. Ростов-на-Дону
2
ФГБУН «Южный математический институт – филиал
ВНЦ РАН»,
г. Владикавказ
E-mail: 1079@list.ru
Обычно расчеты, связанные с нахождением термонапряженного со- стояния цилиндрических конструкций проводят для однородных материа- лов. Однако в настоящее время в различные области техники все шире внедряются функционально-градиентные материалы (ФГМ) – неоднород- ные материалы с заданными свойствами [1]. Из-за сложной и многосту- пенчатой технологии изготовления ФГМ в конечном изделии могут при- сутствовать отклонения от заданных законов. Реальные свойства неодно- родных материалов можно определить только на основе решения коэффи- циентных обратных задач (КОЗ) термоупругости, которые малоисследо- ванны.
В настоящее время актуальной задачей является построение эконом- ных и устойчивых алгоритмов решения КОЗ. Наиболее распространен- ным методом решения обратных задач является построение функционала невязки и его минимизация каким-либо из градиентных методов. На осно- ве такого подхода выполнены исследования по КОЗ теплопроводности
[2,3] и теории упругости [4].
Ранее авторами был разработан численный метод решения одномер- ных КОЗ теории упругости и термоупругости на основе построения итера- ционного процесса [5–8]. На основе слабой постановки прямой задачи в трансформантах Лапласа и линеаризации получена система интегральных уравнений Фредгольма (ИУФ) 1-го рода для нахождения поправок термо- механических характеристик. После перехода от трансформант к оригина- лам были проведены вычислительные эксперименты по восстановлению термомеханических характеристик стержневых [6] и цилиндрических кон- струкций [7, 8]. При этом ограничивались восстановлением одной из тер- момеханических характеристик при известных других. Однако обычно на практике неизвестными являются сразу несколько термомеханических ха- рактеристик.
71
В данной работе исследована обратная задача по одновременной идентификации двух теплофизических характеристик трубы при тепловом нагружении. Для этого рассмотрены две задачи термоупругости для трубы с различной тепловой нагрузкой на ее внешней поверхности: 1) в виде теп- лового потока; 2) в виде температуры. Внутренняя поверхность трубы сво- бодна от напряжений и теплоизолирована. В качестве дополнительной ин- формации на внешней поверхности трубы выступают: 1) температура для первой задачи; 2) тепловой поток для второй задачи.
Прямые задачи термоупругости после применения преобразования
Лапласа решаются на основе метода пристрелки и обращении трансформант на основе метода разложения оригинала по смещенным многочленам Ле- жандра [8]. Проведен анализ влияния законов изменения переменных ха- рактеристик на значения снимаемой в эксперименте входной информации.
Итерационный процесс идентификации стартует с выбора начальных приближений двух функций, которые определяются в классе линейных функций на основе минимизации функционала невязки на двух множе- ствах, построенных исходя из априорной информации об ограниченности искомых функций. Далее осуществляется корректировка текущих законов изменения термомеханической характеристики путем нахождения двух поправок из решения системы ИУФ 1-го рода в оригиналах. Далее итера- ционный процесс повторяется до тех пор, пока не будет достигнуто усло- вие остановки: достижения некоторого порогового значения функционала невязки или достижения предельного количества итераций. Поскольку ре- шение системы ИУФ 1-го рода является некорректной задачей, то для его регуляризации применяется метод Тихонова А. Н.
В ходе вычислительных экспериментов восстанавливались две пары коэффициентов: 1) коэффициент теплопроводности и удельная теплоем- кость; 2) коэффициент теплопроводности и коэффициент температурного напряжения. Восстанавливались пары, как монотонно возрастающих, так и монотонно убывающих функций. Выяснено, что успешная реконструкция пары коэффициент теплопроводности и коэффициент температурного напряжения возможна только при большом параметре связанности. Пары безразмерных характеристики восстанавливались с достаточной точно- стью: максимальная погрешность реконструкции двух монотонных функ- ций не превосходила 7%. Обсуждено влияние на точность реконструкции зашумления входной информации. При наличии зашумления погрешность реконструкции увеличивалась, но даже при 2%-м шуме не превышала 14%.
Литература
1. Birman V., Byrd L.W. Modeling and analysis of functionally graded materials and structures // Appl. Mech. Rev. 2007. V. 60(5). P. 195–216.
72 2. Dulikravich G. S., Reddy S. R., Pasqualette M. A., Colaco M. J., Orlande H.
R., Coverston J. Inverse determination of spatially varying material coeffi- cients in solid objects // J. Inverse Ill-Posed Probl. 2016. V. 24. P. 181–194.
3. Cao K., Lesnic D. Determination of space-dependent coefficients from tem- perature measurements using the conjugate gradient method // Num. Methods
Part. Different. Eq. 2018. V. 34(4). P. 1370–1400.
4. Geymonat G, Pagano S. Identification of mechanical properties by displace- ment field measurement: a variational approach // Meccanica. 2003. V. 38.
P. 535–545.
5. Dudarev V. V., Vatulyan A. O., Mnukhin R. M., Nedin R. D. Concerning an approach to identifying the Lame parameters of an elastic functionally graded cylinder // Math Meth Appl Sci. 2020. P. 1–20.
6. Ватульян А. О., Нестеров С. А. Об одном способе идентификации тер- моупругих характеристик для неоднородных тел // Инженерно- физический журнал. 2014. Т. 87, № 1. С. 217–224.
7. Ватульян А. О., Нестеров С. А. К определению неоднородных термоме- ханических характеристик трубы // Инженерно-физический журнал.
2015. Т. 88, № 4. С. 951–959.
8. Ватульян А. О., Нестеров С. А. К определению термомеханических ха- рактеристик функционально-градиентного конечного цилиндра // При- кладная математика и механика. 2021. Т. 85, вып. 3. С. 396–408.
73
ИСПОЛЬЗОВАНИЕ ЯЗЫКА PYTHON ДЛЯ
ПРОТОТИПИРОВАНИЯ РАСШИРЕНИЯ АЛГОРИТМА
УНИФИКАЦИИ
Волошин Б. И., Михалкович С. С.
ФГАОУ ВО «Южный федеральный университет»,
Институт математики, механики и компьютерных наук
им. И. И. Воровича,
г. Ростов-на-Дону
E-mail: bvoloshin@sfedu.ru
При разработке алгоритмов, важным этапом является прототипирование. Этот этап позволяет выявить ошибки в подходе к решению задачи, а также упрощает проверку работы алгоритма на конкретных случаях. В данной статье будет рассмотрен прототип обобщения алгоритма унификации ограничений на подтипирование для вывода типов концептов [7].
Рассматриваемая проблема находится на границе между двумя парадигмами программирования. Впервые идея концептов была представлена Бьярном Страуструпом [4]. Данная задача является важной в связи с еѐ широкой практической значимостью [2]. С тех пор была предложена концепция языка D, поддерживающего концепты [3]. Ещѐ один подход – расширение интерфейсов [6]. Стоит отметить, что эти идеи не были в полной мере реализованы до сих пор. Кроме того, расширение интерфейсов предоставляет только ограниченный функционал концептов [1].
Возникающие алгоритмы сложны для восприятия и учитывают множество разных деталей.
Чтобы облегчить разработку подобного алгоритма, было использование прототипирование, как инструмент разработки.
Важный аспектом подобного прототипирование была эволюция алгоритма, т. е. необходим был язык программирования, на котором было бы возможно кардинально менять алгоритм с минимальными затратами. Поэтому выбор был сделан в пользу языка с динамической типизацией Python. unify(C) = if C =
∅, then [ ] else let {S = T}
∪ C’ = C in if S = T then unify(C’) else if S = X and X
∉
FV(T) then unify([X ->T]C’)◦[X -
>T] else if T = X and X
∉
FV(S) then unify([X ->S]C’) ◦
Рис. 1. Классический формализо- ванный алгоритм унификации
74 unify(C) =
… if S
∊ConstrainedType then unify([S.subs](C’
∪ {S.type = T})) ⚬ S.subs else if T
∊ConstrainedType then unify([T.subs](C’
∪ {S = T.type})) ⚬ T.subs else if S = T then unify(C’) else if S
∊TypeVar and T∊TypeVal and S∉FV(T) and T ∊ (S) out Q then let
???? = unify(Q)[1] ⚬ [S ↦ T] in unify([????]C’) ⚬ ???? else if T
∊TypeVar and S∊TypeVal and T∉FV(S) and S ∊ (T) out Q then let
???? = unify(Q)[1] ⚬ [T ↦ S] in unify([????]C’) ⚬ ????
…
Необходимость прототипирования очевидна, если сравнить классический алгоритм унификации [6] (Рис. 1) с частью его расширения [7] (Рис. 2).
Стоит отдельно рассмотреть, какие особенности языка Python оказались полезны для прототипирования алгоритма: динамическая типизация, декораторы, перегрузка операторов, широкий спектр библиотек.
Динамическая типизация, как преимущество, так и недостаток, так как влечѐт за собой потенциальные ошибки.
При прототипировании на языке Python стоит об этом помнить, поэтому одним из подходов может быть, на самых ранних стадиях прототипирования, реализовать модульное тестирование.
Декораторы позволили привязать парсинг к параметрам функций, что упростило тестирование и читабельность кода.
Перегрузка операторов позволила реализовать операции, которые соответствуют формальным операциям, например:
В формализованном алгоритме:
X = (S) ∩ (T) out Q
На питоне:
X = S |cros| T |out| Q
Рис. 2. Фрагмент расширенного формализованного алгоритма унификации
Рис. 3. Пример использо- вания graphviz
75
Для целей прототипирования была использована библиотека graphviz, которая позволила визуализировать иерархию наследования (напр. см. рис. 3).
Рассмотрим фрагмент кода на питоне (рис. 4). Если сравнить с фрагментом формализованного алгоритма, то можно увидеть, что отличие состоит только в записи операций.
Таким образом, в настоящей статье рассмотрено использование прототипирования на языке Python в данной области, оно показало себя эффективным, так как программа на языке Python имеет полное соответствие с алгоритмом на псевдокоде, а также средствами Python можно реализовывать визуализацию для рассматриваемой предметной области, что необходимо для подготовки статей и изучения результатов.
… if S |bel| ConstrainedType: return _unify(S.constraints |at| (constraints |con|
[Eq(S.type, T)])) |adds| S.constraints if T |bel| ConstrainedType: return _unify(T.constraints |at| (constraints |con|
[Eq(S, T.type)])) |adds| T.constraints if S == T: return _unify(constraints) elif S |bel| Variable and T |bel| TypeVal and not S |infv| T and T |lay| S |out| r_lay: subs = unify(r_lay)[1] + [S |rep| T] return _unify(subs |at| constraints) |adds| subs elif S |bel| TypeVal and T |bel| Variable and not T |infv| S and S |lay| T |out| r_lay: subs = unify(r_lay)[1] + [T |rep| S] return _unify(subs |at| constraints) |adds| subs
…
Рис. 4. Фрагмент расширенного алгоритма унификации на Python
Литература
1. Julia Belyakova, Stanislav Mikhalkovich. Pitfalls of C# Generics and Their
Solution Using Concepts // Proceedings of the Institute for System Programming,
ISSN 2220-6426 (Online). Москва, 2015, N 27(3); С. 29;45.
2. Белякова Ю. В., Михалкович С. С. Концепт-параметры как механизм развития средств обобщѐнного программирования в языке C# / Современные информационные технологии и ИТ-образование. 2015 2(11):205-213.
3. Jeremy G. Siek, A Language for generic programming, submitted to the faculty of the University Graduate School in partial fulfillment of there quirements for the
76 degree Doctor of Philosophy in the Department of Computer Science Indiana
University August, 2005.
4. Bjarne Stroustrup, Gabriel Dos Reis. Concepts — design choices for template argument checking.
Technical
Report
N1522=03-0105,
ISO/IEC
JTC1/SC22/WG21. C++ Standards Committee Papers, October 2003.
5. Jaakko J¨arvi, Jeremiah Willcock, Andrew Lumsdaine. Associated Types and
Constraint Propagation for Mainstream Object-Oriented Generics. In OOPSLA ‘05
Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, 40(10):1–19. ACM Press,
October 2005.
6. Benjamin C. Pierce. Types and Programming Languages, 22 Type Reconstruction.
The MIT Press, 2002.
7. Волошин Б. И., Михалкович С. С.
Обобщение алгоритма унификации ограничений на подтипирование для вывода типов концептов / Современные информационные технологии и ИТ-образование. 2021.
77
ПРИМЕНЕНИЕ ЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНЫХ СРЕДСТВ
ДЛЯ ВИЗУАЛИЗАЦИИ ТРАНСФОРМАЦИИ ВОЛЬТАМПЕРНОЙ
ХАРАКТЕРИСТИКИ ПОЛУПРОВОДНИКОВОЙ СТРУКТУРЫ
СВЧ В УЧЕБНОМ ПРОЦЕССЕ
Волощенко П. Ю., Волощенко Ю. П.
ФГАОУ ВО «Южный федеральный университет»,
г. Таганрог
E-mail: voloschenkoyup@sfedu.ru
При реализации образовательных программ подготовки бакалавров и магистров направлений 11.03.03, 11.04.03 – Конструирование и технология электронных средств, 11.03.04, 11.04.04 – Электроника и наноэлектроника, и 13.03.02, 13.04.02 – Электроэнергетика и электротехника одними из наиболее сложных для восприятия студентами являются понимания и изу- чения электрических процессов в полупроводниковых компонентах, фор- мирующих электронную цепь [1–2]. Множество взаимовлияющих элек- тронных эффектов и технических характеристик, описывающихся ком- плексными нелинейными моделями, затрудняют формирование у студен- тов базовых представлений о конкретных физических процессах и кон- струкции устройств электроники и наноэлектроники с точки зрения науки об электричестве. Внедрение в учебный процесс пакетов прикладных про- грамм для решения задач инженерных вычислений, позволяющий нагляд- но представлять сложные зависимости с помощью разнообразного набора средств наглядной визуализации существенно упрощает задачу формиро- вания требуемых профессиональных компетенций в рамках изучения кур- сов, связанных с анализом и разработкой современных микросхем микро- волнового диапазона. Используя комплексные модели теории электронной волновой цепи [3] студенты имеют возможность рассчитать и исследовать амплитуды тока и напряжения для различных рабочих режимов двухпор- товых четырехполюсных нелинейных элементов (НЭ), описывающих ба- зовые компоненты интегральных схемы (ИС).
При проектировании взаимодействующих p-n или гетеропереходов микросхем СВЧ, выполненных из материалов с разной электропроводно- стью, отсутствует возможность применения диакоптики Крона и линейной теории многополюсников. Дело в том, что дискретные электронные при- боры (ЭП) в них создают электродвижущие силы (ЭДС), когерентно функ- ционирующие как единое целое. Они моделируются генераторами ограни- ченной мощности в разных точках электромагнитного (ЭМ) поля слоистой наноструктуры. С другой стороны, межэлектродные области ЭП образуют микроволновую цепь невзаимных четырехполюсников, объединенных гальванической и беспроводной связью. В этом случае модификацию то-
78 пологии совокупности зависимых ЭДС следует осуществлять методом не- автономных блоков, обеспечивающем сохранение еѐ системных свойств.
Однако для его реализации надо знать кластерные операторы каскадного множества одно и двухпортовых четырехполюсных НЭ, управляемых то- ком и напряжением СВЧ.
В докладе приведена методика расчета вольтамперной характеристи- ки (ВАХ) кластера, содержащего проводник питания и ЭП с электростати- ческим управлением. В рамках теории электронной волновой цепи (ЭВЦ) сформулирован алгоритм определения амплитуды сигнала на зажимах элементарного и составного проходного четырехполюсного НЭ. Проведена диагностика пути вынужденной циркуляции переменного тока в одномер- ной структуре СВЧ при частоте воздействия, определяемой задержкой сигнала в отдельной области пролета электронов. Реакция ЭП анализиру- ется в монохроматическом приближении, соответствующем стационарно- му многомодовому режиму кластера. Аналитическое вычисление транс- формации интенсивности воздействия ЭДС проводится методами эквива- лентных синусоид и гармонической линеаризации для кубической аппрок- симации колебательной характеристики ЭП, используемой в классической схеме генератора Ван дер Поля. Исследование направлено на оптимизацию условий квантования энергетического состояния в системах микроволно- вых транзисторов методом гармонического баланса и последующий спек- тральный анализ композиции ЭДС сигналов в них. Предлагаемая методика позволяет применить символический (комплексный) импедансный подход при детерминации электрического строения микросхем в ЭМ поле.
На рисунке изображена колебательная I
1
=f(U
1
) характеристика или
ВАХ по первым гармоникам переменного тока I
1
и напряжения U
1
в раз- ных сечениях кластера. Она рассчитана с помощью программы Matlab при регулировке электрической длины θ металлического соединения и ампли- туды U
1
воздействия, параметра нелинейности и нормированной малосиг- нальной проводимости g
e0
металл-диэлектрик-полупроводниковых обла- стей в волновом масштабе.
Трехмерный график четырехполюсной модели слоистой одномерной структуры наглядно иллюстрирует одновременно еѐ нелинейные и волно- вые свойства, варьируемые интенсивность сигналов и ЭДС питания [5].
Подобная графическая визуализация пространственных процессов демон- стрирует динамику вариации положения «рабочей» точки на ВАХ класте- ра, определяющей перманентное изменение амплитудно-зависимых гра- ничных условий в ИС СВЧ. Эти и другие характеристики и зависимости рассчитываются и анализируются студентами в ходе выполнения лабора- торных и практических заданий при изучении теории электронной волно- вой цепи в рамках учебных занятий, направленных на формирование про-
Ватульян А. О.
1
, Нестеров С. А.
2
1
ФГАОУ ВО «Южный федеральный университет»,
Институт математики, механики и компьютерных наук
им. И. И. Воровича,
г. Ростов-на-Дону
2
ФГБУН «Южный математический институт – филиал
ВНЦ РАН»,
г. Владикавказ
E-mail: 1079@list.ru
Обычно расчеты, связанные с нахождением термонапряженного со- стояния цилиндрических конструкций проводят для однородных материа- лов. Однако в настоящее время в различные области техники все шире внедряются функционально-градиентные материалы (ФГМ) – неоднород- ные материалы с заданными свойствами [1]. Из-за сложной и многосту- пенчатой технологии изготовления ФГМ в конечном изделии могут при- сутствовать отклонения от заданных законов. Реальные свойства неодно- родных материалов можно определить только на основе решения коэффи- циентных обратных задач (КОЗ) термоупругости, которые малоисследо- ванны.
В настоящее время актуальной задачей является построение эконом- ных и устойчивых алгоритмов решения КОЗ. Наиболее распространен- ным методом решения обратных задач является построение функционала невязки и его минимизация каким-либо из градиентных методов. На осно- ве такого подхода выполнены исследования по КОЗ теплопроводности
[2,3] и теории упругости [4].
Ранее авторами был разработан численный метод решения одномер- ных КОЗ теории упругости и термоупругости на основе построения итера- ционного процесса [5–8]. На основе слабой постановки прямой задачи в трансформантах Лапласа и линеаризации получена система интегральных уравнений Фредгольма (ИУФ) 1-го рода для нахождения поправок термо- механических характеристик. После перехода от трансформант к оригина- лам были проведены вычислительные эксперименты по восстановлению термомеханических характеристик стержневых [6] и цилиндрических кон- струкций [7, 8]. При этом ограничивались восстановлением одной из тер- момеханических характеристик при известных других. Однако обычно на практике неизвестными являются сразу несколько термомеханических ха- рактеристик.
71
В данной работе исследована обратная задача по одновременной идентификации двух теплофизических характеристик трубы при тепловом нагружении. Для этого рассмотрены две задачи термоупругости для трубы с различной тепловой нагрузкой на ее внешней поверхности: 1) в виде теп- лового потока; 2) в виде температуры. Внутренняя поверхность трубы сво- бодна от напряжений и теплоизолирована. В качестве дополнительной ин- формации на внешней поверхности трубы выступают: 1) температура для первой задачи; 2) тепловой поток для второй задачи.
Прямые задачи термоупругости после применения преобразования
Лапласа решаются на основе метода пристрелки и обращении трансформант на основе метода разложения оригинала по смещенным многочленам Ле- жандра [8]. Проведен анализ влияния законов изменения переменных ха- рактеристик на значения снимаемой в эксперименте входной информации.
Итерационный процесс идентификации стартует с выбора начальных приближений двух функций, которые определяются в классе линейных функций на основе минимизации функционала невязки на двух множе- ствах, построенных исходя из априорной информации об ограниченности искомых функций. Далее осуществляется корректировка текущих законов изменения термомеханической характеристики путем нахождения двух поправок из решения системы ИУФ 1-го рода в оригиналах. Далее итера- ционный процесс повторяется до тех пор, пока не будет достигнуто усло- вие остановки: достижения некоторого порогового значения функционала невязки или достижения предельного количества итераций. Поскольку ре- шение системы ИУФ 1-го рода является некорректной задачей, то для его регуляризации применяется метод Тихонова А. Н.
В ходе вычислительных экспериментов восстанавливались две пары коэффициентов: 1) коэффициент теплопроводности и удельная теплоем- кость; 2) коэффициент теплопроводности и коэффициент температурного напряжения. Восстанавливались пары, как монотонно возрастающих, так и монотонно убывающих функций. Выяснено, что успешная реконструкция пары коэффициент теплопроводности и коэффициент температурного напряжения возможна только при большом параметре связанности. Пары безразмерных характеристики восстанавливались с достаточной точно- стью: максимальная погрешность реконструкции двух монотонных функ- ций не превосходила 7%. Обсуждено влияние на точность реконструкции зашумления входной информации. При наличии зашумления погрешность реконструкции увеличивалась, но даже при 2%-м шуме не превышала 14%.
Литература
1. Birman V., Byrd L.W. Modeling and analysis of functionally graded materials and structures // Appl. Mech. Rev. 2007. V. 60(5). P. 195–216.
72 2. Dulikravich G. S., Reddy S. R., Pasqualette M. A., Colaco M. J., Orlande H.
R., Coverston J. Inverse determination of spatially varying material coeffi- cients in solid objects // J. Inverse Ill-Posed Probl. 2016. V. 24. P. 181–194.
3. Cao K., Lesnic D. Determination of space-dependent coefficients from tem- perature measurements using the conjugate gradient method // Num. Methods
Part. Different. Eq. 2018. V. 34(4). P. 1370–1400.
4. Geymonat G, Pagano S. Identification of mechanical properties by displace- ment field measurement: a variational approach // Meccanica. 2003. V. 38.
P. 535–545.
5. Dudarev V. V., Vatulyan A. O., Mnukhin R. M., Nedin R. D. Concerning an approach to identifying the Lame parameters of an elastic functionally graded cylinder // Math Meth Appl Sci. 2020. P. 1–20.
6. Ватульян А. О., Нестеров С. А. Об одном способе идентификации тер- моупругих характеристик для неоднородных тел // Инженерно- физический журнал. 2014. Т. 87, № 1. С. 217–224.
7. Ватульян А. О., Нестеров С. А. К определению неоднородных термоме- ханических характеристик трубы // Инженерно-физический журнал.
2015. Т. 88, № 4. С. 951–959.
8. Ватульян А. О., Нестеров С. А. К определению термомеханических ха- рактеристик функционально-градиентного конечного цилиндра // При- кладная математика и механика. 2021. Т. 85, вып. 3. С. 396–408.
73
ИСПОЛЬЗОВАНИЕ ЯЗЫКА PYTHON ДЛЯ
ПРОТОТИПИРОВАНИЯ РАСШИРЕНИЯ АЛГОРИТМА
УНИФИКАЦИИ
Волошин Б. И., Михалкович С. С.
ФГАОУ ВО «Южный федеральный университет»,
Институт математики, механики и компьютерных наук
им. И. И. Воровича,
г. Ростов-на-Дону
E-mail: bvoloshin@sfedu.ru
При разработке алгоритмов, важным этапом является прототипирование. Этот этап позволяет выявить ошибки в подходе к решению задачи, а также упрощает проверку работы алгоритма на конкретных случаях. В данной статье будет рассмотрен прототип обобщения алгоритма унификации ограничений на подтипирование для вывода типов концептов [7].
Рассматриваемая проблема находится на границе между двумя парадигмами программирования. Впервые идея концептов была представлена Бьярном Страуструпом [4]. Данная задача является важной в связи с еѐ широкой практической значимостью [2]. С тех пор была предложена концепция языка D, поддерживающего концепты [3]. Ещѐ один подход – расширение интерфейсов [6]. Стоит отметить, что эти идеи не были в полной мере реализованы до сих пор. Кроме того, расширение интерфейсов предоставляет только ограниченный функционал концептов [1].
Возникающие алгоритмы сложны для восприятия и учитывают множество разных деталей.
Чтобы облегчить разработку подобного алгоритма, было использование прототипирование, как инструмент разработки.
Важный аспектом подобного прототипирование была эволюция алгоритма, т. е. необходим был язык программирования, на котором было бы возможно кардинально менять алгоритм с минимальными затратами. Поэтому выбор был сделан в пользу языка с динамической типизацией Python. unify(C) = if C =
∅, then [ ] else let {S = T}
∪ C’ = C in if S = T then unify(C’) else if S = X and X
∉
FV(T) then unify([X ->T]C’)◦[X -
>T] else if T = X and X
∉
FV(S) then unify([X ->S]C’) ◦
Рис. 1. Классический формализо- ванный алгоритм унификации
74 unify(C) =
… if S
∊ConstrainedType then unify([S.subs](C’
∪ {S.type = T})) ⚬ S.subs else if T
∊ConstrainedType then unify([T.subs](C’
∪ {S = T.type})) ⚬ T.subs else if S = T then unify(C’) else if S
∊TypeVar and T∊TypeVal and S∉FV(T) and T ∊ (S) out Q then let
???? = unify(Q)[1] ⚬ [S ↦ T] in unify([????]C’) ⚬ ???? else if T
∊TypeVar and S∊TypeVal and T∉FV(S) and S ∊ (T) out Q then let
???? = unify(Q)[1] ⚬ [T ↦ S] in unify([????]C’) ⚬ ????
…
Необходимость прототипирования очевидна, если сравнить классический алгоритм унификации [6] (Рис. 1) с частью его расширения [7] (Рис. 2).
Стоит отдельно рассмотреть, какие особенности языка Python оказались полезны для прототипирования алгоритма: динамическая типизация, декораторы, перегрузка операторов, широкий спектр библиотек.
Динамическая типизация, как преимущество, так и недостаток, так как влечѐт за собой потенциальные ошибки.
При прототипировании на языке Python стоит об этом помнить, поэтому одним из подходов может быть, на самых ранних стадиях прототипирования, реализовать модульное тестирование.
Декораторы позволили привязать парсинг к параметрам функций, что упростило тестирование и читабельность кода.
Перегрузка операторов позволила реализовать операции, которые соответствуют формальным операциям, например:
В формализованном алгоритме:
X = (S) ∩ (T) out Q
На питоне:
X = S |cros| T |out| Q
Рис. 2. Фрагмент расширенного формализованного алгоритма унификации
Рис. 3. Пример использо- вания graphviz
75
Для целей прототипирования была использована библиотека graphviz, которая позволила визуализировать иерархию наследования (напр. см. рис. 3).
Рассмотрим фрагмент кода на питоне (рис. 4). Если сравнить с фрагментом формализованного алгоритма, то можно увидеть, что отличие состоит только в записи операций.
Таким образом, в настоящей статье рассмотрено использование прототипирования на языке Python в данной области, оно показало себя эффективным, так как программа на языке Python имеет полное соответствие с алгоритмом на псевдокоде, а также средствами Python можно реализовывать визуализацию для рассматриваемой предметной области, что необходимо для подготовки статей и изучения результатов.
… if S |bel| ConstrainedType: return _unify(S.constraints |at| (constraints |con|
[Eq(S.type, T)])) |adds| S.constraints if T |bel| ConstrainedType: return _unify(T.constraints |at| (constraints |con|
[Eq(S, T.type)])) |adds| T.constraints if S == T: return _unify(constraints) elif S |bel| Variable and T |bel| TypeVal and not S |infv| T and T |lay| S |out| r_lay: subs = unify(r_lay)[1] + [S |rep| T] return _unify(subs |at| constraints) |adds| subs elif S |bel| TypeVal and T |bel| Variable and not T |infv| S and S |lay| T |out| r_lay: subs = unify(r_lay)[1] + [T |rep| S] return _unify(subs |at| constraints) |adds| subs
…
Рис. 4. Фрагмент расширенного алгоритма унификации на Python
Литература
1. Julia Belyakova, Stanislav Mikhalkovich. Pitfalls of C# Generics and Their
Solution Using Concepts // Proceedings of the Institute for System Programming,
ISSN 2220-6426 (Online). Москва, 2015, N 27(3); С. 29;45.
2. Белякова Ю. В., Михалкович С. С. Концепт-параметры как механизм развития средств обобщѐнного программирования в языке C# / Современные информационные технологии и ИТ-образование. 2015 2(11):205-213.
3. Jeremy G. Siek, A Language for generic programming, submitted to the faculty of the University Graduate School in partial fulfillment of there quirements for the
76 degree Doctor of Philosophy in the Department of Computer Science Indiana
University August, 2005.
4. Bjarne Stroustrup, Gabriel Dos Reis. Concepts — design choices for template argument checking.
Technical
Report
N1522=03-0105,
ISO/IEC
JTC1/SC22/WG21. C++ Standards Committee Papers, October 2003.
5. Jaakko J¨arvi, Jeremiah Willcock, Andrew Lumsdaine. Associated Types and
Constraint Propagation for Mainstream Object-Oriented Generics. In OOPSLA ‘05
Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, 40(10):1–19. ACM Press,
October 2005.
6. Benjamin C. Pierce. Types and Programming Languages, 22 Type Reconstruction.
The MIT Press, 2002.
7. Волошин Б. И., Михалкович С. С.
Обобщение алгоритма унификации ограничений на подтипирование для вывода типов концептов / Современные информационные технологии и ИТ-образование. 2021.
77
ПРИМЕНЕНИЕ ЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНЫХ СРЕДСТВ
ДЛЯ ВИЗУАЛИЗАЦИИ ТРАНСФОРМАЦИИ ВОЛЬТАМПЕРНОЙ
ХАРАКТЕРИСТИКИ ПОЛУПРОВОДНИКОВОЙ СТРУКТУРЫ
СВЧ В УЧЕБНОМ ПРОЦЕССЕ
Волощенко П. Ю., Волощенко Ю. П.
ФГАОУ ВО «Южный федеральный университет»,
г. Таганрог
E-mail: voloschenkoyup@sfedu.ru
При реализации образовательных программ подготовки бакалавров и магистров направлений 11.03.03, 11.04.03 – Конструирование и технология электронных средств, 11.03.04, 11.04.04 – Электроника и наноэлектроника, и 13.03.02, 13.04.02 – Электроэнергетика и электротехника одними из наиболее сложных для восприятия студентами являются понимания и изу- чения электрических процессов в полупроводниковых компонентах, фор- мирующих электронную цепь [1–2]. Множество взаимовлияющих элек- тронных эффектов и технических характеристик, описывающихся ком- плексными нелинейными моделями, затрудняют формирование у студен- тов базовых представлений о конкретных физических процессах и кон- струкции устройств электроники и наноэлектроники с точки зрения науки об электричестве. Внедрение в учебный процесс пакетов прикладных про- грамм для решения задач инженерных вычислений, позволяющий нагляд- но представлять сложные зависимости с помощью разнообразного набора средств наглядной визуализации существенно упрощает задачу формиро- вания требуемых профессиональных компетенций в рамках изучения кур- сов, связанных с анализом и разработкой современных микросхем микро- волнового диапазона. Используя комплексные модели теории электронной волновой цепи [3] студенты имеют возможность рассчитать и исследовать амплитуды тока и напряжения для различных рабочих режимов двухпор- товых четырехполюсных нелинейных элементов (НЭ), описывающих ба- зовые компоненты интегральных схемы (ИС).
При проектировании взаимодействующих p-n или гетеропереходов микросхем СВЧ, выполненных из материалов с разной электропроводно- стью, отсутствует возможность применения диакоптики Крона и линейной теории многополюсников. Дело в том, что дискретные электронные при- боры (ЭП) в них создают электродвижущие силы (ЭДС), когерентно функ- ционирующие как единое целое. Они моделируются генераторами ограни- ченной мощности в разных точках электромагнитного (ЭМ) поля слоистой наноструктуры. С другой стороны, межэлектродные области ЭП образуют микроволновую цепь невзаимных четырехполюсников, объединенных гальванической и беспроводной связью. В этом случае модификацию то-
78 пологии совокупности зависимых ЭДС следует осуществлять методом не- автономных блоков, обеспечивающем сохранение еѐ системных свойств.
Однако для его реализации надо знать кластерные операторы каскадного множества одно и двухпортовых четырехполюсных НЭ, управляемых то- ком и напряжением СВЧ.
В докладе приведена методика расчета вольтамперной характеристи- ки (ВАХ) кластера, содержащего проводник питания и ЭП с электростати- ческим управлением. В рамках теории электронной волновой цепи (ЭВЦ) сформулирован алгоритм определения амплитуды сигнала на зажимах элементарного и составного проходного четырехполюсного НЭ. Проведена диагностика пути вынужденной циркуляции переменного тока в одномер- ной структуре СВЧ при частоте воздействия, определяемой задержкой сигнала в отдельной области пролета электронов. Реакция ЭП анализиру- ется в монохроматическом приближении, соответствующем стационарно- му многомодовому режиму кластера. Аналитическое вычисление транс- формации интенсивности воздействия ЭДС проводится методами эквива- лентных синусоид и гармонической линеаризации для кубической аппрок- симации колебательной характеристики ЭП, используемой в классической схеме генератора Ван дер Поля. Исследование направлено на оптимизацию условий квантования энергетического состояния в системах микроволно- вых транзисторов методом гармонического баланса и последующий спек- тральный анализ композиции ЭДС сигналов в них. Предлагаемая методика позволяет применить символический (комплексный) импедансный подход при детерминации электрического строения микросхем в ЭМ поле.
На рисунке изображена колебательная I
1
=f(U
1
) характеристика или
ВАХ по первым гармоникам переменного тока I
1
и напряжения U
1
в раз- ных сечениях кластера. Она рассчитана с помощью программы Matlab при регулировке электрической длины θ металлического соединения и ампли- туды U
1
воздействия, параметра нелинейности и нормированной малосиг- нальной проводимости g
e0
металл-диэлектрик-полупроводниковых обла- стей в волновом масштабе.
Трехмерный график четырехполюсной модели слоистой одномерной структуры наглядно иллюстрирует одновременно еѐ нелинейные и волно- вые свойства, варьируемые интенсивность сигналов и ЭДС питания [5].
Подобная графическая визуализация пространственных процессов демон- стрирует динамику вариации положения «рабочей» точки на ВАХ класте- ра, определяющей перманентное изменение амплитудно-зависимых гра- ничных условий в ИС СВЧ. Эти и другие характеристики и зависимости рассчитываются и анализируются студентами в ходе выполнения лабора- торных и практических заданий при изучении теории электронной волно- вой цепи в рамках учебных занятий, направленных на формирование про-