Coder Social home page Coder Social logo

snkhaderi / iith_split_hopkinson_bar_data_processing Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 88 KB

Matlab code for post processing of split-Hopkinson/Kolsky bar experiments

License: GNU General Public License v3.0

MATLAB 100.00%
split-hopkinson kolsky high-strain-rate dispersion-correction strate-rate strain stress shpb-process

iith_split_hopkinson_bar_data_processing's Introduction

SHPB post-processing

====================================== dispersion_generate_curve.m

This code generates the dispersion relations, which can be used using dispersion correction The Output is stored as wave speed vs frequency in a .mat file, which is given as an input in the main function. This code has to be run first.

====================================== dispersion.m

This code does the dispersion correction. i.e., push forward and pull back.

It needs the following input: dispersion relation data generated from the above code, signal, distance and time increment. The fourier time-shifted signal is given as output. The default ispersion relation data file name is dispersion.mat. Alternative names can also be optionally given.

====================================== SHPB_main.m

  1. Calculates the dispersion relations
  2. Loads the data file. data_dir is the location of the dat and vel is the name of the data file. The data file should be a csv file with three coulmns (time, input signal and output signal).
  3. Checks for equilibrium using SHPB_opt.m and SHPB_process.m.
  4. Calculates the stress, strain and strate rate for a material using SHPB_process.m
  5. The output is stored as a .out file in the 'out' folder in the data_dir.

====================================== SHPB_process.m

This file calculates the stress, strain and strate rate for a material. It needs the driver SHPB_main.m The signal_start and signal_end variables have to be adjusted to match the waves overlap.

====================================== SHPB_opt.m

This file calculates the error for the optimizer.

========================================== GENERAL PROCEDURE

  1. Set the direcrectory where the data resides using the variable data_dir
  2. Give the file name using the variable vel.
  3. Input/verify the below variables   E = 6;               % voltage of the wheatstone brige   amp = 100;             % amplification used   a=6e-3;               % bar radius   Ebar = 210e9;          % Young's modulus of bar   C0=5100;               % wave speed of bar   f_cutt = 100e3;        % cutt-off frequency of the amplifier   %%%%%%%%%%%%%%%%%%%%%   Dsample=6e-3;   Lsample = 2.5e-3;   % %%%%%%%%%%%%%%%%%%%%
  4. Carefully look at the structure of the input file. It will be usually a csv file. Find which columns correspond to which signal.
  5. The variable signal is a column matrix. The first column is the time. The second is the input bar signal. The third is the output bar signal. Very carefully allocate these variables.
  6. Make sure that the variable signal has even number of rows.
  7. Set the values of x0 to be approximate locations of the incident and transmission gauges from the sample.
  8. Make sure that the variable cal in the file SHPB_process is set properly.
  9. You have to set the index at which the signal starts at the sample via the variable signal_start in the file SHPB_process. This is simply set by signal_start = ind_1+x0(1)/C0/dt, where ind_1 is the index at which the signal starts in the oscilloscope
  10. You have to set the index at which the signal ends at the sample via the variable signal_end in the file SHPB_process. This is signal_start + 2*l_st/C0/dt, where l_st is the striker length. 

Now return to the code SHPB_main.m and run it. The output should be in the out folder within the directory dir.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.