NAME

RF::Component::Multi - Multi-element vectorized handling of RF::Component objects.

DESCRIPTION

This module enables loading Measurement Data Interchange Format (MDIF) files and operating on each component them as a vector. Each RF::Component::Multi object is a blessed arrayref containing a list of RF::Component objects, so you can use it as a normal array to get a particular component. You can also run RF::Component methods on an RF::Component::Multi object to return a vector of results, one result for each RF::Component object in the arrayref.

SYNOPSIS

use RF::Component::Multi;

# Load an MDIF file:
my $mdf = RF::Component::Multi->load('t/test-data/muRata/muRata-GQM-0402.mdf',
		load_options => { freq_min_hz => 100e6, freq_count => 1 }
	);

# Query a single component in the MDIF:
my $component1 = $mdf->[1];
print $component1->cap_pF;

# Query all components in the MDF with a vectorized result:
my $cap_pF = $mdf->cap_pF;

# Print the result value (same as $component1->cap_pF, above):
print $cap_pF->[1];

IO Functions

RF::Component::Multi->load - Load a multiple-data file

Currently only MDIF files are supported, other formats are possible. Usage:

my $mdf = RF::Component::Multi->load($filename, %options);
  • The %options hash is passed to RF::Component's load function.

  • If load_options is provided in %options then load_options is passed to PDL::IO::MDIF's rmdif function.

SEE ALSO

RF::Component - An object-oriented encapsulation of PDL::IO::Touchstone.
PDL::IO::MDIF - A PDL IO module to load Measurement Data Interchange Format (*.mdf) files.
Building MDIF/MDF files from multiple S2P files: https://youtu.be/q1ixcb_mgeM, https://github.com/KJ7NLL/mdf/
Optimizing amplifer impedance match circuits with MDF files: https://youtu.be/nx2jy7EHzxw
MDIF file format: https://awrcorp.com/download/faq/english/docs/users_guide/data_file_formats.html#i489154

AUTHOR

Originally written at eWheeler, Inc. dba Linux Global Eric Wheeler to transform .s2p files and build MDF files to optimize with Microwave Office for amplifer impedance matches.

COPYRIGHT

Copyright (C) 2022 eWheeler, Inc. https://www.linuxglobal.com/

This module is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This module is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this module. If not, see <http://www.gnu.org/licenses/>.