Skip to content

dobromiriiliev/Undulatory-Swimming-A-Topological-and-Computational-Model

Repository files navigation

Undulatory Swimming A Topological Model and Computational Model

Project Created by Dobromir Ilev, Ricardo Guardado, Anish Goyal

  • So far the project has won the following awards: 1st place Gwinnett County, 1st GSMST, for the robotics division.
  • The link to the corresponding research paper is here: https://drive.google.com/file/d/1UaMT4SGGc2kpZWqV4BYI-lb-KxDnudds/view?usp=sharing
  • The MATLab Synaptic Model implements a histogram-based Naive Bayes classifier tailored for analyzing synaptic data. It takes input from a file named "synaptic_data.txt" containing synaptic data, where each line represents a synaptic event with a corresponding time value. The code trains the classifier by binning the time values into a specified number of Gaussian bins and calculating the probability of occurrence for each bin. Then, it calculates the conditional probability of synaptic values given the time bins, considering the number of occurrences within each time bin. However, it does not account for occurrences where no events are recorded. This model is designed to infer synaptic values based solely on the time of occurrences, ignoring periods without events.
  • The ROS (Robot Operating System) , involves reading synaptic data from a file and utilizing it to determine motor speed. The script defines a function to read synaptic data from a file, and a callback function to process the received synaptic data message, determining motor speed based on the synaptic value (# of occurences/time, defined by the Synaptic Model).
  • The computational model implemented emulates fluid dynamics within a three-dimensional domain, employing principles of computational fluid dynamics (CFD). It incorporates the bounce-back scheme to emulate fluid-solid interactions, where fluid particles are subjected to reflection upon encountering solid boundaries. This interaction is crucial for simulating phenomena such as flow past obstacles or within confined spaces. Moreover, the model integrates turbulence effects using a simplified Smagorinsky-Lilly model, introducing stochastic fluctuations to the velocity field, thus capturing turbulent behavior within the fluid flow. An iterative approach is employed to solve for the pressure field, which is crucial for maintaining the balance of forces within the fluid domain. Additionally, to optimize computational efficiency, a priority queue system is integrated, which prioritizes grid points for computation based on their complexity, as determined by the sum of their indices. This ensures that computations are performed more efficiently, focusing computational resources on areas of the domain that require greater attention, thereby enhancing the overall performance of the simulation. By employing a priority queue system, computational resources are allocated more effectively, optimizing the simulation process. The priority queue prioritizes the computation of grid points based on their complexity, allowing for more efficient processing. This approach ensures that grid points with higher indices, indicative of greater computational complexity, are addressed first, while simpler grid points are processed later. As a result, computational resources are directed towards regions of the domain where they are most needed, facilitating faster and more accurate simulations. This prioritization strategy not only enhances computational efficiency but also enables the model to handle larger and more complex fluid flow scenarios with greater ease, making it a versatile tool for studying a wide range of fluid dynamics phenomena.

About

Project Created by Ricardo Guardado, Anish Goyal, and Dobromir Iliev

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published