Starr Programming Language
12 Aug 2024Example Syntax:
int one(int a) {
int x = a * 5
return x + 3
}
int two() {
return 5 % 3
}
out(one(12)) // Outputs 63
out(two()) // Outputs 2
See the current project on Github
Example Syntax:
int one(int a) {
int x = a * 5
return x + 3
}
int two() {
return 5 % 3
}
out(one(12)) // Outputs 63
out(two()) // Outputs 2
See the current project on Github
Problem:
A wheel with radius R has a constant angular velocity in the -z direction (so the wheel rolls in +x). There is a dot on the wheel a distance p away from the center where p>0. We wish for R>p, but we do explore when p>R and even when p=R. We wish to animate the motion of this dot.
Result:
We go through many different results and iterations of animation. The entire process is on the Github tied to the project. This was the final result for R=2, angular velocity of -2, and p=1, and for values of p=2 and p=4.
p=1:
p=2:
p=4:
Note that the original project used a .mov file. This resulting .gif is of lower quality than the original video
See the full project on Github
Example Output:
See the current project on Github
There was a poster presentation associated with this. For discretion regarding the others involved, it has not been included on this website
Implementations:
This project implements a lot. To see the custom behavior, check the wiki of the repository
Addition Example:
See the full project on Github
Process:
Use Pandas to read a csv into a DataFrame. Drop all date and location information and ensure we are only working with numerical data for regression. Deal with null values accordingly, and then split the data into training and testing sets. Define a model that normalizes the data and then trains on 4 ReLU Dense layers of 512 filters with L2 Regularization, and then finish with a singular filter Dense layer. Train the model with a 0.001 learning rate Adam optimzer, using MAE loss. Train the model, and compare the predictions to the true values.
Project File:
See the full project on Github
Project File:
Derivations:
Poster (Obscured):
See the full project on Github
Process:
Collect csv data into a Pandas DataFrame. Enumerate the data to make it all numbers and then visualize the data to see what we’re working with. We then reshape and compile the closing price data and do the same to the high and low price values. We concatenate that usiny NumPy into one array and scale the data. We split the data into training and testing sets, and then using TensorFlow and Keras to generate a Sequential model with a LSTM and Dense layer. After compiling it and training it on the training set, we then predict the stock price closing value of the test set, and then graph the results to inspect the accuracy.
Snippets:
PG Stock Price Graph:
The RNN Summary:
The Prediction:
The Prediction w/ More Data:
Full Scope of Prediction (Vertical Line Where Prediction Starts):
See the full project on Github
Process:
Use Pandas to read a csv into a DataFrame. Enumerate the data to get a frame with only numbers. Check for unusable data and use imputation, if needed, to insert data. After inspecting graphs of the data, normalize the data and filter it accordingly. Split the data into training and test sets, and then model the data using KNeighborsRegressor model and train the data. Then, we predict on the test set and measure the error. Finally, we fiddle with the model a bit to find the most accurate one, and then we’re done.
Snippets:
Information Gain on Parameters (VarianceThreshold Not Pictured):
The r2 Values:
The Final Model:
See the full project on Github
What is Spigot?: Minecraft is a video game made in Java (for non-console systems). Spigot is one of many server-hosting options for Minecraft, like Bukkit, Paper, Yatopia, and more. Spigot allows for programmers to create plugins that are loaded with the server as enhancements. Using Spigot’s API, more optimizations and customizability are available for developers.
This project helped me learn how to organize many tasks into smaller projects, and taught me how to work with more complicated programming systems, like APIs, documentation, and Maven.
See the full project on Github
Through this project I learned a lot about Python development and asynchronous programming. Additionally, I learned about cloud hosting environments like Heroku and Google Cloud VM to host the bot 24/7. I worked a lot with JSON and SQLite as well to store important data. This project help fuel my love for computer science and also taught me how to handle a large-scale project.
Screenshots:
See an obscured version of one of my bots (Psyduck) on Github