Оружие будущего

Форум про оружие будущего
Текущее время: Вс мар 24, 2019 3:44 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Подсчет омических потерь в гауссе
СообщениеДобавлено: Пн апр 18, 2011 7:02 pm 
Аватар пользователя

Зарегистрирован: Вс ноя 25, 2007 1:56 pm
Сообщений: 2127
Дело было вечером, делать было нечего...букавки постарайтесь не вводить взамен цифр, "защиты от дурака" нет и виснет(не сильно); считает просто численным интегрированием, есть общ формула, но она неприлично большая вышла и мне было лениво ее вбивать.

UP: Теперь считает максимальный ток в контуре и полупериод.
Изображение


Вложения:
CALC.rar [3.82 KIB]
Скачиваний: 294

_________________
Текущие проекты: кровопролитная борьба с с 51ой за светлое будущее MCIS, зонд для конкурса CanSat. Пытаюсь вернуться к проекту гаусса.


Последний раз редактировалось petru-nick Пн апр 18, 2011 8:09 pm, всего редактировалось 2 раз(а).
Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Подсчет омических потерь в гауссе
СообщениеДобавлено: Пн апр 18, 2011 7:11 pm 
идиот какой-то
Аватар пользователя

Зарегистрирован: Вс авг 10, 2008 3:21 pm
Сообщений: 596
Откуда: Москва
на mc++ писал?

_________________
大切な物 protect my balls!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Подсчет омических потерь в гауссе
СообщениеДобавлено: Пн апр 18, 2011 7:42 pm 
Аватар пользователя

Зарегистрирован: Вс ноя 25, 2007 1:56 pm
Сообщений: 2127
Просто с++. Наверн щас добавлю вывод макс. тока и значения T/2.

_________________
Текущие проекты: кровопролитная борьба с с 51ой за светлое будущее MCIS, зонд для конкурса CanSat. Пытаюсь вернуться к проекту гаусса.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Подсчет омических потерь в гауссе
СообщениеДобавлено: Пн апр 18, 2011 8:17 pm 
идиот какой-то
Аватар пользователя

Зарегистрирован: Вс авг 10, 2008 3:21 pm
Сообщений: 596
Откуда: Москва
откомпиль под clr, код посмотреть охота

_________________
大切な物 protect my balls!


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Подсчет омических потерь в гауссе
СообщениеДобавлено: Пн апр 18, 2011 8:52 pm 
Аватар пользователя

Зарегистрирован: Вс ноя 25, 2007 1:56 pm
Сообщений: 2127
Дык я так покажу. Бо я хз, что есть CLR и в VS EE C++ 2008 его нет вроде :mrgreen: (ах не, нашел таки) , я только щас начал потихоньку переходить на си с делфи, он мне сейчас кажется удобнее несколько. Вот, практикуюсь маленько. А к .нет и с# вообще не касался пока, темный лес какой-то.

Код:
// CALC.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <math.h>
#include <conio.h>

#define dt 0.000005
#define pi 3.1415

int _tmain(int argc, _TCHAR* argv[])
{
   float L, C, R, U;
   double omega, delta, qo, T_half, t, A, I_max, I, temp, temp1;
   // Омега - циклическая частота, дельта - к-т затухания, qo - нач заряд,
   // T_half - полупериод, A - работа(потери)
   while(1)
      {
      
      printf("\nInductance, uH :>\n");
      scanf("%f", &L);
      printf("\nCapacitor, uF:>\n");
      scanf("%f", &C);
      printf("\nResistance, Ohm:>\n");
      scanf("%f", &R);
      printf("\nVoltage, V:>\n");
      scanf("%f", &U);
      
      // в СИ
      L *= 10E-7;
      C *= 10E-7;

      delta = R/(2*L);
      omega = 1 / sqrt(L*C);
      qo = C*U;
      T_half = pi/omega;

      I_max=t=A=0;

      //Вынес расчета констант за цикл
      temp = sqrt(1+pow(omega, 2))*qo;
      temp1 = asin(1/temp);


      while(t < T_half)
      {
         t += dt;
         I = exp(-1*delta*t)*temp*sin(temp1-omega*t);
         A += R*pow(I, 2)*dt;
         if (I_max<abs(I)) I_max = abs(I); //модуль тока, ибо он отриц.
      }

      printf("\nCapacitor energy: %10.2fJ\n", U*U*C/2);
      printf("Ohmic loss: %10.2fJ  ( %5.2f%% )\n", A, ((2*A)/(U*U*C))*100);
      printf("Max current: %10.0fA\n", I_max);
      printf("Half of period: %10.3fms\n", T_half*10E2);

      _getch();
   }
   return 0;
}


Все расчетные формулы из:
q(t) = qo*exp(-1*delta*t)*cos(omega*t)
delta = R/2L
omega = (L*C)^-0.5

Ток - первая производная

Если ее возвести в квадрат, умножить на R и проинтегрировать по времени, то можно получить расово верную формулу, но мну ее интегрировал минут 40, получил длиннющую бяку с неизвестной правильностью, и поэтому в проге интегрировал численно.

_________________
Текущие проекты: кровопролитная борьба с с 51ой за светлое будущее MCIS, зонд для конкурса CanSat. Пытаюсь вернуться к проекту гаусса.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Подсчет омических потерь в гауссе
СообщениеДобавлено: Вт май 03, 2011 8:13 am 

Зарегистрирован: Пн май 02, 2011 1:03 pm
Сообщений: 7
А какие еще потери кроме омических? Без снаряда вся энергия в итоге переходит в тепло


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Подсчет омических потерь в гауссе
СообщениеДобавлено: Вт май 03, 2011 8:46 am 
пантера
Аватар пользователя

Зарегистрирован: Сб фев 06, 2010 11:15 am
Сообщений: 8014
Aslan писал(а):
А какие еще потери кроме омических? Без снаряда вся энергия в итоге переходит в тепло

Вся в тепло? Ну ну... Подумай, сколько выделится тепла... ;)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Подсчет омических потерь в гауссе
СообщениеДобавлено: Вт май 03, 2011 10:13 am 
Алконавт
Аватар пользователя

Зарегистрирован: Ср янв 09, 2008 3:38 pm
Сообщений: 7320
Откуда: Нова Проспект
Стандартный кап - 60дж. Это в переводе в тепло, безумно мало.
средняя катушка весит 100г. 100г меди. Медь - 380дж/кгК Получится, 38дж надо для того, чтобы нагреть катушку на 1 градус. Т.е. одним выстрелом, нагреваем катушку на 1-1.5 градуса в среднем. За 10-20 выстрелов нагреем на 10-15 градусов соответственно. Так оно и есть в реальности, принимая во внимание теплоотвод в воздух и в ствол.
Большая часть энергии на самом деле уходит тупо в тепло, небольшая часть - на намагничивание снаряда, и небольшая - на его ускорение.

_________________
    L   
L  O  L      :ROFL:ROFL:LOL:ROFL:ROFL:
    L\\                    _____I_____
        \========="  ☆   | ಠ_ಠ ||\
___                      \___o===- - - - - ) - - - <>KГAM>
 :ROFLCOPTER:         __|_____|_/

:STRIKES:NOOBS:


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
cron

 

Яндекс цитирования
Русская поддержка phpBB