KLM model
Version 2.0.8 (20.5 KB) by
Andrew Draudt
Implementation of the model published by Krimholtz, Leedom and Matthae (1970), for 2-d piezo-ceramic transducers
function res=KLMPiezo(varargin)
% varargin = model file, var1, var2 (for stepping).
% Model piezo-ceramic transducers.
% Implimentation of the model published by Krimholtz, Leedom and Matthae
% (1970, for 2-d piezo-ceramic transducers
% This uses ABCD matrix approach implimented with the Two-Port package found in
% the matlab file exchange. You need this toolbox from Matlab FIle Exchange: "Linear 2-port Circuit
% Simulator by Brett Bymaster.
% This is a lumped-element model, which you could add to you circuit models
% for transmitter and receivers, by cascading in their ABCD matrices.
% "layers" and "backlayers" are arrays of "material" structures, each with fields:
% velocity, acoustic impedance "z", thickness. The last back layer is infinite in length.
% The infinite front z however is entered as a separate variable "front"
% Can do 2-way (pulse-echo)
% The first section lists material properties. You can easily add more. For piezo materials I have
% so far only defined pzt4, K81, and a few of my composites. In model
% building, you refer to these materials by the tem.type field.
% User inputs:
% 1. what to plot. Set to "1" if you want this plot. Can do frequency
% plots or time plots (with a given voltage excitation)
% 2. The model, consisting of design center freq, crystal material, facing
% and backing layer materials and thickness etc. It will save your model as a struct (model.mat), which
% you can later pass to this fcn as a param if you want (varargin).
% 3. misc inputs, like number of points in calculation, and source impedance.
% For electrical network, I haven't implimented coax cable yet.
% 8/8/16 can't handle case of no facing yet, so just use thin or invisible layer for that case.
% 10/17/16 loss in facing (and thus backing) doesn't seem to do anything.
Cite As
Andrew Draudt (2025). KLM model (https://www.mathworks.com/matlabcentral/fileexchange/155777-klm-model), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Created with
R2023b
Compatible with any release
Platform Compatibility
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
2.0.8 | added several missing files |
||
2.0.7 | added missing file my6db.m |
||
2.0.6 | added missing function "myzerocrossings.m" |
||
2.0.5 | included one more missing file (myBandwidth.m) |
||
2.0.4 | added missing file |
||
2.0.3 | Changed some wording and organization to make easier to understand. |
||
2.0.2 | changed name, to match my previous app (not in ABCD format), to make it more findable |
||
2.0.1 | typos |
||
2.0.0 | added required files |
||
1.0.0 |