|
Построение функции по графику, формула для графика |
|
|
|
Sep 30 2011, 11:24
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(V_G @ Sep 30 2011, 15:15)  Это действие называется аппроксимация. Различные виды аппроксимаций проходят по математике на 1-2 курсах института. Вам стоит для начала определиться с видами аппроксимирующих функций. Часто в их качестве используют полиномы. Я пробовал аппроксимировать через полином 9 степени в программе advanced grapher - не получается, т.к. слишком большое отклонение. Гиперболическая тоже не подходит. Здесь нужна какая-то сложная функция, как мне кажется.
Сообщение отредактировал Stefan1 - Sep 30 2011, 11:24
|
|
|
|
Guest_@Ark_*
|
Sep 30 2011, 11:25
|
Guests

|
Приблизительно: Y=60*e^(-X/4)+5
|
|
|
|
|
Sep 30 2011, 14:05
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(Taradov Alexander @ Sep 30 2011, 15:54)  Расскажите что такое "довольно точно" и дайте данные в виде таблицы хотябы. Чем точнее, тем лучше. В принципе сходимость с таблицей в числах до запятой (т.е. в целых числах) была бы идеальной.
Сообщение отредактировал Stefan1 - Sep 30 2011, 14:12
|
|
|
|
|
Sep 30 2011, 18:44
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(_Anatoliy @ Sep 30 2011, 18:39)  Есть такая программа,TableCurve называется,выдаст вам несколько тысяч вариантов и каждый со своей погрешностью.Ищите... Благодарю, _Anatoliy! Цитата(Alex11 date='Sep 30 2011, 18:39)  Вы не подберете функцию по Вашим данным - они не лежат на плавной кривой. Если Вам нужны именно эти точки - то только аппроксимация сплайнами по кускам. Если немного подвинуть точки, то кое-что получается, хотя, конечно, и не 2 точных знака: 57.595*exp(-col(A)/2.516)+8.807*exp(-col(A)/11.059)+6.222 А как построить аппроксимацию сплайнами по кускам? Это уравнение я так понимаю и есть такая аппроксимация? Хотелось бы понять сам принцип построения таких функций.
Сообщение отредактировал Stefan1 - Sep 30 2011, 18:49
|
|
|
|
|
Sep 30 2011, 18:54
|

Профессионал
    
Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202

|
А что вы с этой функцией потом делать собираетесь? получать значение в произвольных точках? Или хочется сэкономить место и просто восстанавливать эти значения? Для второго сплайны не годятся - места для хранения коэффициентов нужно будет еще больше чем для сырых данных. А вообще вот матлабовский код, который считает коэффициенты кубического сплайна для ваших данных. Принцип расчета описан в описании на сами функции, гугл в помощь. CODE x = [0,1,2,3,4,5,6,7,8,10,12,14,16,18,20,25,40,70]; y= [73, 52, 44, 31, 24, 20, 17, 16, 12, 10.7, 10, 9.2, 8.6, 8, 7.6, 7, 6.4, 6.3];
p = spline(x,y); y1 = ppval(p, x); figure; hold on; plot(x, y); plot(x, y1, 'r--');
|
|
|
|
|
Sep 30 2011, 19:02
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(Taradov Alexander @ Sep 30 2011, 22:54)  А что вы с этой функцией потом делать собираетесь? получать значение в произвольных точках? Или хочется сэкономить место и просто восстанавливать эти значения?
Для второго сплайны не годятся - места для хранения коэффициентов нужно будет еще больше чем для сырых данных.
А вообще вот матлабовский код, который считает коэффициенты кубического сплайна для ваших данных. Принцип расчета описан в описании на сами функции, гугл в помощь. Благодарю за информацию, Taradov Alexander! Функция эта нужна для задания зависимости проходной ёмкости LDMOS транзистора для расчёта его эквивалентной схемы.
Сообщение отредактировал Stefan1 - Sep 30 2011, 19:07
|
|
|
|
|
Sep 30 2011, 19:12
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(Taradov Alexander @ Sep 30 2011, 23:08)  Сплайн - это все равно кусочно-заданная функция, так что вашу проблему они не решат, если вам нужно получить нормальную функцию для запихивания в моделирующий софт.
Но обычно там должна быть базовая функция равная 1 на заданном интервале и 0 вне интервала, с помощью нее можно описать ваши данные как сумму линейных кусков.
Так что если вы уточните какой именно софт потом эту функцию будет использовать, может еще чем поможем. Софт - матлаб.
|
|
|
|
Guest_@Ark_*
|
Sep 30 2011, 20:01
|
Guests

|
Stefan1, а Вы уверены, что необходимо такое точное совпадение функции с исходными данными? По моему, стоит оценить, какой вклад вносит это выражение в результаты моделирования. Вполне возможно, что и точность в 5-10% Вас устроит. Тогда лучше поискать более точные коэффициенты (A,B,C) для наиболее простого выражения вида Y=А*e^(-B*X)+C. И на этом остановиться.
|
|
|
|
|
Oct 2 2011, 17:47
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(@Ark @ Oct 1 2011, 00:01)  Stefan1, а Вы уверены, что необходимо такое точное совпадение функции с исходными данными? По моему, стоит оценить, какой вклад вносит это выражение в результаты моделирования. Вполне возможно, что и точность в 5-10% Вас устроит. Тогда лучше поискать более точные коэффициенты (A,B,C) для наиболее простого выражения вида Y=А*e^(-B*X)+C. И на этом остановиться. Хочется по-точнее, т.к нужно добиться максимального совпадения экспериментального результата с расчетом. Сложно пока оценить какой вклад вносит это выражение в результаты моделирования, т.к. есть ещё аналогичные выражения, влияющие на результат.
Сообщение отредактировал Stefan1 - Oct 2 2011, 18:05
|
|
|
|
|
Oct 2 2011, 18:10
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(xemul @ Oct 2 2011, 22:02)  Тогда вопрос - сколько значащих цифр в экспериментальных данных? Бессмысленно добиваться точности аппроксимации большей, чем точность измерений. Порядок точности измерений - десятые доли. Так что здесь хорошо бы добиться совпадения целых чисел.
|
|
|
|
|
Oct 12 2011, 07:19
|
Частый гость
 
Группа: Свой
Сообщений: 197
Регистрация: 17-06-10
Из: Киев
Пользователь №: 57 986

|
Цитата(Stefan1 @ Oct 2 2011, 20:47)  Сложно пока оценить какой вклад вносит это выражение в результаты моделирования, т.к. есть ещё аналогичные выражения, влияющие на результат. Цитата(Stefan1 @ Oct 4 2011, 12:09)  Используя программу TableCurve удалось получить функцию, наиболее точно совпадающую с точками из данной таблицы. Взгляните еще на регрессионный анализ. Кажется что вы задачу решаете не тем методом, т.е. не строите качественную модель, а пытаетесь подобрать формулу для исходных данных.
|
|
|
|
|
Oct 26 2011, 11:24
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(i-mir @ Oct 12 2011, 11:19)  Взгляните еще на регрессионный анализ. Кажется что вы задачу решаете не тем методом, т.е. не строите качественную модель, а пытаетесь подобрать формулу для исходных данных. Эта зависимость нужна для описания емкости транзистора. А модель сама описывает поведение транзистора, когда он работает в режиме.
|
|
|
|
|
Nov 2 2011, 13:48
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(i-mir @ Oct 28 2011, 12:47)  Хорошо, другими словами. Вы например получите: C,мкф = f (t,мс) А что нужно получить ? Без цели, дальнейшие рассуждения теряют смысл. Получаю зависимость C, мкФ от U, В. Затем подставляю эту зависимость в эквивалентную схему транзистора. Эта схема имеет несколько нелинейных элементов, зависящих от U, один из них эта емкость. Таким образом я могу описать поведение транзистора при различных напряжениях. В частности можно посмотреть как изменяется импеданс транзистора.
|
|
|
|
|
Nov 3 2011, 05:45
|
Частый гость
 
Группа: Свой
Сообщений: 120
Регистрация: 18-06-08
Из: Томск
Пользователь №: 38 375

|
Цитата(Stefan1 @ Nov 2 2011, 17:48)  Получаю зависимость C, мкФ от U, В. Затем подставляю эту зависимость в эквивалентную схему транзистора. Эта схема имеет несколько нелинейных элементов, зависящих от U, один из них эта емкость. Таким образом я могу описать поведение транзистора при различных напряжениях. В частности можно посмотреть как изменяется импеданс транзистора. В обычных нелинейных моделях (в стандартных) проходная емкость описывается формулой: Cgs = Cgs0/ sqrt(1- Vgs/Vgsi). Где Cgs0 – это значение емкости затвор-исток при Vgs = 0 В; Vgsi – потенциал поля барьера Шотки. Эта формула основа, обычно еще добавляют всякие разные сглаживающие функции (как в модели Statz или Raytheon). Посмотрите описание моделей Angelov, Statz, Curtice-Ettenberg и прочих, например, в help'e Agilent'a, возможно многие вопросы отпадут.
|
|
|
|
|
Nov 3 2011, 07:42
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(sp1noza @ Nov 3 2011, 08:45)  В обычных нелинейных моделях (в стандартных) проходная емкость описывается формулой: Cgs = Cgs0/ sqrt(1- Vgs/Vgsi). Где Cgs0 – это значение емкости затвор-исток при Vgs = 0 В; Vgsi – потенциал поля барьера Шотки. Эта формула основа, обычно еще добавляют всякие разные сглаживающие функции (как в модели Statz или Raytheon). Посмотрите описание моделей Angelov, Statz, Curtice-Ettenberg и прочих, например, в help'e Agilent'a, возможно многие вопросы отпадут. Тут как раз дело в том, чтобы эту зависимость для емкости задать максимально совпадающей с реальной, т.к. и без этого в моделе много чего неточного. Как мне уже подсказали, я использовал программу TableCurve, где очень все хорошо получилось.
Сообщение отредактировал Stefan1 - Nov 3 2011, 07:43
|
|
|
|
|
Nov 10 2011, 11:52
|
Группа: Новичок
Сообщений: 9
Регистрация: 20-04-09
Из: Санкт-Петербург
Пользователь №: 47 967

|
В матлабе есть функции апроксимации. Создается структура, содержащая коэффициенты полинома. Затем просто подставить их в аналитическую запись. Все это в пакете Spline toolbox вроде
|
|
|
|
|
Nov 11 2011, 06:50
|
Участник

Группа: Свой
Сообщений: 70
Регистрация: 27-05-11
Из: почти Москва
Пользователь №: 65 305

|
Цитата(Andrey307 @ Nov 10 2011, 14:52)  В матлабе есть функции апроксимации. Создается структура, содержащая коэффициенты полинома. Затем просто подставить их в аналитическую запись. Все это в пакете Spline toolbox вроде А в качестве самого простого варианта в среде Matlab можно воспользоваться функцией polyfit, но "хороший" результат сложно получить для плохо обусловленной матрицы...
|
|
|
|
|
Nov 11 2011, 06:56
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(Andrey307 @ Nov 10 2011, 14:52)  В матлабе есть функции апроксимации. Создается структура, содержащая коэффициенты полинома. Затем просто подставить их в аналитическую запись. Все это в пакете Spline toolbox вроде Я пробовал уже, но то, что хотел сделать - не получилось. В итоге нашел проще способ.
|
|
|
|
|
Dec 1 2012, 19:28
|
Группа: Новичок
Сообщений: 3
Регистрация: 30-11-12
Из: Москва
Пользователь №: 74 635

|
Цитата(Stefan1 @ Sep 30 2011, 23:02)  Благодарю за информацию, Taradov Alexander! Функция эта нужна для задания зависимости проходной ёмкости LDMOS транзистора для расчёта его эквивалентной схемы. Stefan доброго времени суток, не могу отправить вам в личку сообщение. вопрос такой:как вы расчитываете эквивалентную схему транзистора? какие измерения делаете? какая методика. заранее благодарю.
|
|
|
|
|
Dec 3 2012, 07:03
|
Местный
  
Группа: Участник
Сообщений: 414
Регистрация: 7-04-11
Из: Москва
Пользователь №: 64 187

|
Цитата(Андрей Алексеевич @ Dec 1 2012, 22:28)  Stefan доброго времени суток, не могу отправить вам в личку сообщение. вопрос такой:как вы расчитываете эквивалентную схему транзистора? какие измерения делаете? какая методика. заранее благодарю. Методика - ничего необычного: 1) Измеряем ВАХи. 2) Измеряем емкости кристалла транзистора. 3) Дальше измеряем индуктивности проволочек внутри корпуса транзистора (делаем тесты, например, для измерения проволочек между кристаллом и бортом). 4) Самое сложное - это измерение паразитных сопротивлений. В зарубежных статьях пишут, что вычисляют их из S параметров, но тут не все так просто, т.к. для мощных транзисторов их сложно мерить, нужно специальное оборудование. У нас его нет и мы эти сопротивления измеряем на малом сигнале и затем подгоняем, понятно, что точность при этом не ахти какая.
|
|
|
|
|
Dec 5 2012, 12:27
|
Группа: Новичок
Сообщений: 3
Регистрация: 30-11-12
Из: Москва
Пользователь №: 74 635

|
Благодарю  эх нужен приборчик для х параметров. и не париться с эквивалентными схемами
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|