Welcome to the LanPlot's Webpage

The language for easily plotting Fourier transforms

View project on GitHub

Download tar.gz file | Download zip file

LanPlot

Introduction

LanPlot is a new programming language designed to find and plot the Fourier Transform of a given signal. Fourier Series are used to approximate in a periodic way any signal, and its transform is a decomposition of that same signal into frequencies. The motivation for designing this language was to make it easier to visualize the behavior of different signals used specially in communications. LanPlot will be able to take expressions expressed as signals or variables, compute their Fourier Transform, and plot them. A projection for this language is to make possible to plot the square, sawtooth, and triangle Fourier Series approximations of different signals accordingly.

Language Feautures

The main idea for this language is to make graphs of the Fourier Transform of signals used in communications. It takes a signal as direct input or as a variable and plots its Fourier transform over a specified number of samples. A variable in this program can hold a signal expressed as an exponential, cosine or sine. In other words, a variable can be a function. An important detail is that every variable or function to plot has to be accompanied by a parameter corresponding to the number of samples to plot. Throughout the development of this programming language, changes to instructions and features will be made.

Example of Program

LanPlot can take inputs in the following ways:

•	PLOT FOURIERTRANSFORM signal, number_of_samples
•	PLOT FOURIERTRANSFORM variable
•	variable = signal, number_of_samples
•	variable = FOURIERTRANSFORM variable
•	PLOT variable
•	variable = variable

An example of a program could be:

 #(LanPlot) > var = cos(2*pi*50*t), 600
#var
#(LanPlot) > plot fouriertransform var //output graph is generated

LanPlot Demo

Contributors

LanPlot was developed by Cristian Duque (@cristianduque) and Gladymar Oneill (@goneill09) for the Programming Languages course at the University of Puerto Rico Mayaguez Campus