Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Другие темы раздела
PascalABC.NET В кассе есть монеты по 2, 5 и 10 рублей. Сколькими способами можно выдать сдачу на некоторую сумму Sum, значен https://www.cyberforum.ru/ pascalabc-net/ thread1829836.html
Какая то дичь, нужно сделать с for
PascalABC.NET Найти среднее арифметическое значение чисел массива
Написали код; в 9 строке пишет: ,, - Параметр цикла for в PascalABC.NET должен описываться в заголовке цикла,, в 12 строке пишет ,, - Program1.pas(12) : Нельзя преобразовать тип real к integer .....
Вычисление суммы ряда циклом For PascalABC.NET
как решит задачу которая на картинке с помощью примера кода
PascalABC.NET Нерекурсивное нахождение неопределенного интеграла Задача на нахождение неопределенного интеграла от функции X^m*cos(a*x) Нужно написать нерекурсивную процедуру к рекурсивной версии этой задачи.Рекурсивную я написала,но не уверена в нерекурсивной... https://www.cyberforum.ru/ pascalabc-net/ thread1829672.html
PascalABC.NET Программирование https://www.cyberforum.ru/ pascalabc-net/ thread1829654.html
Постройке кривую Коха в ABC Pascal. Спаасибо.
PascalABC.NET Программа "лабиринт"
Нужен код на PascalABC . (Программа "лабиринт". Программа генерирует сложный лабиринт и помещает в произвольную точку фигуру человека. Пользователь должен найти выход из лабиринта)
PascalABC.NET Игра "Найди одинаковые картинки"
Парни напишите код на PascalABC.NET ,буду очень благодарен. (Игра - найди одинаковые картинки, способствующая развитию зрительной памяти. Задача: убрать все карточки с поля за минимальное число...
PascalABC.NET Ошибка времени выполнения: Индекс находился вне границ массива var zoo: array of string; i:integer; begin zoo:='a'; zoo:='bak'; zoo:='c'; write(zoo,' '); end.в чем проблема не могу понять? Я только начал учиться. https://www.cyberforum.ru/ pascalabc-net/ thread1829525.html
PascalABC.NET Проверить max суммы матрицы m на n https://www.cyberforum.ru/ pascalabc-net/ thread1829313.html
Написать программу, которая с помощью процедуры проверяет max сумму построенную в матрице m на n и выводит ее. Заранее спасибо!
PascalABC.NET Свойство объекта - что я делаю не так? uses GraphABC, ABCObjects; var block: array of RectangleABC; begin // Не буду загромождать кодом - Здесь я заполняю массив block block.Bordered := false; // дальше не важно... Вопрос... https://www.cyberforum.ru/ pascalabc-net/ thread1829253.html
Эксперт Pascal/Delphi
2359 / 1278 / 1484
Регистрация: 29.08.2014
Сообщений: 4,602
21.10.2016, 10:58 0

Построить амплитудно-частотную характеристику пружинного маятника

21.10.2016, 10:58. Просмотров 2298. Ответов 7
Метки (Все метки)

Лучший ответ Сообщение было отмечено kpiut как решение

Решение


ФедосеевПавел, да, правильно кажется. Я домой уходил, поэтому не доделал. Там в решение нужно внести внешнюю силу типа как член Аcos(wt). Пробежаться по частотам, получить отношение максимальной амплитуды к максимальной амплитуде при внешней силе и нарисовать по оси ординат отношение амплитуд, по оси абсцисс частоту w. В принципе тут уравнение численно решать не нужно ( просто интересно было диплом вспомнить), достаточно взять готовое решение и его нарисовать. как-то так.

Добавлено через 7 часов 12 минут
kpiut, вот АЧХ
формулу использовал эту:
https://www.cyberforum.ru/cgi-bin/latex.cgi?A=\frac{F_0}{m\sqrt{(\frac{k}{m}-\omega^2)^2+(\frac{f\omega}{m})^2}}

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
uses GraphAbc;
const n=1000;
var
  i:integer;
  a,w:array[0..n] of real;
  F0:real:=3;//амплитуда
  m:real:=1;//масса
  k:real:=5;//жесткость
  f:real:=0.5;//коэффициет трения
  Mx:real:=0;
begin
  for i:=0 to n do begin
    w[i]:=i/100;//частота
    a[i]:=F0/m/sqrt(sqr(k/m-sqr(w[i]))+sqr(f*w[i]/m));
    mx:=max(a[i],mx);
  end;
  Window.Maximize;
  clearwindow;
  var Oy:=WindowHeight div 2;
  var dx:=WindowWidth/n;
  var dy:=Oy/mx-10;
  SetPenColor(clBlack);
  line(0,oy,windowwidth,oy);line(0,0,0,windowheight);
  textout(5,oy+10,'0');
  textout(windowwidth-35,oy-20,'w, Гц');
  textout(10,10, 'A');
  MoveTo(round(w[0]*dx),oy-round(a[0]*dy));
  for i:=0 to n do begin 
    lineto(round(dx*i),oy-round(a[i]*dy),clRed);
    if i mod 20=0 then TextOut(round(dx*i),oy+10,format('{0:0.##}',w[i]));
  end;
  TextOut(0,Oy+40,format('собственная частота={0:0.##} Гц',sqrt(k/m)));
end.


Вернуться к обсуждению:
Построить амплитудно-частотную характеристику пружинного маятника
2
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.10.2016, 10:58
Готовые ответы и решения:

Смоделировать колебания пружинного маятника
Помогите, составить программу, моделирующую колебания пружинного маятника (колебания происходят в...

Вертикальные колебания пружинного маятника!
Написать прогу чтоб маятник был вертикально и ходил вниз и в верх на пружинке :good: помогите...

Моделирование вынужденных колебаний пружинного маятника
Тело массой m, закрепленное на пружине жесткостью k, совершает вынужденные колебания под действием...

Как построить фазово-частотную характеристику аудиосигнала?
Здраствуйте! Кто нибудь знает как построит Фазочастотною характеристику аудиосигнала? Ачх я как то...

7
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.