A Python package for fundamental signal processing operations
Project description
Signal Processing Package - ICT Department
A comprehensive Python package for fundamental signal generation and operations, developed for the Programming with Python course (01CT1309) at Marwadi University, Faculty of Engineering and Technology.
📋 Package Overview
This package demonstrates core concepts of Signals and Systems through three modular components:
- Unitary Signals: Unit step, impulse, and ramp signal generation
- Trigonometric Signals: Sine wave, cosine wave, and exponential signal generation
- Signal Operations: Time shifting, scaling, addition, and multiplication operations
🏗️ Package Structure
``` signal_ICT_Jay_92510133007/ ├── init.py # Package initialization and exports ├── unitary_signals.py # Unit step, impulse, and ramp signals ├── trigonometric_signals.py # Sine, cosine, and exponential signals ├── operations.py # Signal manipulation operations ├── main.py # Demonstration script ├── setup.py # Package setup and distribution └── README.md # This documentation file ```
🚀 Installation
Method 1: Install from Wheel (Recommended)
```bash
Install from local wheel file
pip install dist/signal_ICT_Jay_92510133007-1.0.0-py3-none-any.whl ```
Method 2: Install from TestPyPI
```bash
Install from TestPyPI (after upload)
pip install -i https://test.pypi.org/simple/signal_ICT_Jay_92510133007 ```
📦 Dependencies
- NumPy (>=1.19.0): For numerical array operations
- Matplotlib (>=3.3.0): For signal visualization and plotting
🎯 Usage Examples
Basic Signal Generation
```python import numpy as np from signal_ICT_Jay_92510133007 import unit_step, sine_wave
Generate unit step signal
n = np.arange(-10, 10) step_signal = unit_step(n)
Generate sine wave
t = np.linspace(0, 1, 1000) sine_signal = sine_wave(A=2, f=5, phi=0, t=t) ```
Signal Operations
```python from signal_ICT_Jay_92510133007 import signal_addition, time_shift
Add two signals
result = signal_addition(signal1, signal2)
Time shift a signal
shifted = time_shift(signal, k=5) ```
Complete Demonstration
```python
Run the complete demonstration
python main.py ```
🔧 Module Documentation
1. unitary_signals.py
Functions:
unit_step(n): Generates unit step signal u[n]unit_impulse(n): Generates unit impulse signal δ[n]ramp_signal(n): Generates ramp signal r[n]
2. trigonometric_signals.py
Functions:
sine_wave(A, f, phi, t): Generates sine wave with amplitude A, frequency f, phase phicosine_wave(A, f, phi, t): Generates cosine wave with specified parametersexponential_signal(A, a, t): Generates exponential signal A*e^(at)
3. operations.py
Functions:
time_shift(signal, k): Shifts signal by k units in timetime_scale(signal, k): Scales signal in time by factor ksignal_addition(signal1, signal2): Adds two signals point-wisesignal_multiplication(signal1, signal2): Multiplies two signals point-wise
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file signal_ict_jay_92510133007-1.0.0.tar.gz.
File metadata
- Download URL: signal_ict_jay_92510133007-1.0.0.tar.gz
- Upload date:
- Size: 15.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f4b2bcdac49bf8f3871321529dd7d91990e2c3ff0edbf01903ef5fa6c530a07
|
|
| MD5 |
300d186c9791173f27e4caab0911fc02
|
|
| BLAKE2b-256 |
0caa1c69d6831335c15a399b6d82fe459507b50c5456137e60df237d142bf225
|
File details
Details for the file signal_ict_jay_92510133007-1.0.0-py3-none-any.whl.
File metadata
- Download URL: signal_ict_jay_92510133007-1.0.0-py3-none-any.whl
- Upload date:
- Size: 15.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ef867a048490ecb079b08edceebc1b5fd5fa4992f6b035a68e0e281f63ca9d6
|
|
| MD5 |
384c775372fe34198d8c8d3bebb028f5
|
|
| BLAKE2b-256 |
6c9d81ba5cd53251a4c1e3de4355f2b210e9cba08cf920336d0242ae2d34e3fc
|