Introducing the Modelithics SELECT+ Library for MATLAB - MATLAB
Video Player is loading.
Current Time 0:00
Duration 23:18
Loaded: 0.71%
Stream Type LIVE
Remaining Time 23:18
 
1x
  • Chapters
  • descriptions off, selected
  • en (Main), selected
    Video length is 23:18

    Introducing the Modelithics SELECT+ Library for MATLAB

    Find, install, and use the Modelithics® SELECT+ Library™ for MATLAB. Following the guide of Johnny Himbele a MathWorks Senior RF developer, you will learn how to use Modelithics libraries in MATLAB and RF Toolbox.

    Firstly, search for RF passive RLC components by substrate, value, vendor and once you restrict your choice, parametrize the component based on given specifications.

    Secondly, analyze the component S-parameters including RF parasitic effects.

    Lastly, integrate these components into RF circuits such as matching networks and use optimization algorithms to achieve the desired performance.

    Published: 26 May 2023

    So today, we talk about designing RF system using models of RF components, and in particular, we using the Modelithics library. And with me, we have Johnny Himbele from the RF development team at MathWorks, who worked on making available the Modelithics libraries in MATLAB and RF Toolbox.

    So, Johnny, what are the Modelithics libraries, and yeah? What do they contain? What are they for?

    Sure, so Modelithics library has all different kinds of components that can be used with our MATLAB RF Toolbox, and in version 1, we start to support the C capacitor, L inductor, and R resistor components, so mainly passive components.

    So they're not just the ideal passive component that you used to use it in RF Toolbox, but it also contains realistic measurement data. So it also contains the behavior of-- the behavior with a substrate, so you can define the component with the different substrate that exists in the-- commercially available.

    So using Modelithics SELECT+ library, you can now design and analyze your RF network more realistically with our RF Toolbox.

    Wow, so is a passive components that include parasitics, and they are scalable, you mentioned, as a function of the substrate and the way they get mounted on ? Where can I find them? Where do users can find these libraries?

    Of course, so this is one of a unique way that we provide in RF Toolbox. So usually, we ship together with MATLAB, but this case, you have to download from the Modelithics web page. So first of all, for example, you search with Google MATLAB Modelithics, and at the very top link, you will find this web page, which describes how to use the Modelithics SELECT+ library with the MATLAB RF Toolbox.

    For example, on the very bottom, you can find the Modelithics web page, or you just, again, Google it, Modelithics. If you go to the Modelithics web page, let's say home page, go to the product, and then look for SELECT+ library, and then you will find the link here. So Modelithics SELECT+ library is only available Linux and Windows.

    So from here, the users can download them?

    Yes, so for example, my case, I'm a Windows user. So click on here, and you will be asked whether to create your own new user account, or if you already have your account, just put your email and password. And then you can download it.

    I will skip that download step, but once you get the user account, you should be able to install the-- download the Modelithics library. And then once you download it, you should see something executable here.

    And the SELECT+ is for free? So users can just download it to try it to see how it works?

    Yes, exactly, SELECT+ is full free.

    And once you install it, how do you use it in MATLAB, or how does it become visible? What can you do there?

    Sure, so I will again skip the installation step, but just double click executable and specify the location where you want to save your SELECT+ library. And then, so my case here, I have-- this is drive C, and then just give me a second.

    I place it in the Modelithics, and you will see a lot of different files after the installation. This is the location you want to specify, so that our RF 2 The recognize where the Modelithics SELECT+ library is.

    For example, I save Modelithics setup here, so this is the function you want to-- when you set up the Modelithics SELECT+ library, and this is a one time setup. So even if you close your MATLAB and relaunch the MATLAB, you don't have to go through this MDLX setup unless you change the library location. So I do like this.

    Yeah.

    And then I set up. And if you give the wrong folder path to this MDLX library, then it will give you an error message. So you should be able to find it, so yes.

    And is it documented, this function?

    Yes, it is. So for example, you can also check with our help function, MDLX Setup with the help, or--

    Oh, fantastic.

    Yes, and you can also check for the documentation when you click this, and then you can see more better information here.

    So now, we have it installed. We have downloaded the libraries. We have installed them on the machine. We have made them available in MATLAB. And now what?

    So now, you wanted to discover what is the build-- what component is available in Modelithics SELECT+ library, and we have a really nice way to search for the particular passive component that you're interested in. So let's try to start with that.

    So first of all, we wanted to instantiate a Modelithics library object, and to do so, let's say MDLX MDLX library. So this, now, you instantiated Modelithics library, and you see here that you have a different properties associated this MDLX library, which is Type, Vender, Substrate, and Library Path where the Modelithics SELECT+ library is.

    Type is, yes, exactly capacitors, inductors, and resistors. And of course, as you can guess, vendor is the list of available vendor in the Modelithics SELECT+ library, and same for here, Modelithics substrate-- Modelithics library substrate is available-- list of available substrate here.

    I see. So you can choose a component by type, by vendor, and by substrate?

    Yes, and in addition with value.

    So how do you do that?

    Sure, so we have a search on this Modelithics library object, and this is a very powerful and robust method, I believe.

    (TEASING) Not because you developed it.

    Oh, no, no, of course, not.

    [LAUGHING]

    So let's just try, so search, and we give the object MDLX library. And then we have to give the substrate name here where the Modelithics are mounted on.

    And I just wanted to give you some notes that you have to be-- when you design your RF network, you always know which substrate you're going to mount the components on. So that's the reason the substrate is required, and you have to give the substring name. And the substrate name is from the Modelithics substrate library, which is this mdlx.substrate.

    So let's take, in this case, Rogers-- one of the Rogers 5mil substrate here. You just need to give the name, the string of this substring name, and just, let's say, copy paste here. And then we search it.

    Oh, just give me a second. So this said that it couldn't find the Modelithics library, the that, so let's try with then fr4 14mil. So that.

    No no, that's good. What are on the other two columns, by the way?

    Other two columns?

    Of the substrate. Is the thickness of the substrate, the what is it?

    Yes, so these tells-- one is the thickness of the substrate, and also, it tells you some epsilon r. But I can show you from the search, yeah. When you see it, maybe it's hard to see it, but just give me a second.

    So now, it points here. So this gives you a table of a list of available components that satisfies your search criteria. So this case, you're searching for the Modelithics passive components, capacitor, inductor, register, that can be mounted on this fr4 14mil.

    Now, you can see more available list of substrate here with better properties associated. So you have a name, thickness of substrate, epsilon, relative permeability, and loss.

    Gotcha. Gotcha. So the search function returns this table, so it allows you to inspect visually the table.

    Yes.

    But can you also-- how do you extract the components from a table, let's say? How do you use them?

    Sure, so this is the way that you can, again, use the search method, but you need to give the output argument, the left hand side. So let's say we wanted to give some component name.

    Here, this case, it includes all the CLR, so let's say name it CLR, and then give this search. Now, it creates the Modelithics part object, which is the MDLX part, and this is array of MDLX part, which contains all the lists of available component that satisfies this search.

    I see. So now, we have an array of components, and now, we can say index in the array and use the component. And if I wanted to search all the capacitors that can be mounted on the fr4 can I give more arguments to the search method?

    Yes, of course. So here, instead of now left hand side, let's go with-- see, maybe I should show this search without left hand side so that you can see better.

    You just give this here. This is the optional name value pair, which you give, as I show you, the type. And you type it as a capacitors here, and then you see it. Then you will see, here--

    I see.

    So as you can see, the type here, it's all capacitors now, but with a different vendor.

    Right. And now, what can you do with these components? How do you extract, I don't know, their value, or maybe their characteristics? Or how do you use them?

    Sure, so here, for example, then let's just go with capacitor in this case. And then we start with giving this output to the C. And now, we have a 1 by 6 MDLX part array. Let's just check the first array here, what exactly it is.

    So here, it's now-- as you often see for the existing ideal capacitor, resistor, inductor that we already have in RF Toolbox. And here, I wanted to note that, here in the search method, if you just skip type, and without value, any capacitor value, then you see here the value is the minimum nominal value, so which means this is a minimum value that manufactured by this ATC.

    I see. I see. So it is scalable in value, so if I would want to have an ATC 600 as of one can I just change the value, and then the properties will be automatically scaled?

    Yes, exactly. So as far as the value is within the range of that part value for this ATC 600, you should be able to change it. So let's say, this case is-- so it's a first element.

    So this, I do like this, and let's say I wanted to instead of Then yes, now, I'm able to change it, and now, you see the value got changed.

    And can we look at the s parameters of this component?

    Yes, yes, of course, so let's just calculate the s parameters. I think you're most of the customer end users are familiar with our s parameters method, and we can simply do C1. Yes, and then we just give the frequency point, let's say 1e925e9, and let's 50 here.

    So you give the component, the frequency range, and then automatically, you get the s parameters out?

    Yes, and then very quick, as you can see. And then we can just plot it using RF plot. Let me create the figure here, so here.

    Oh, there you go.

    Yes.

    And you can see, indeed, that, yeah, it's not-- it's definitely not an ideal component.

    Yes, it is not. So this is how you can get s parameters of the Modelithics part.

    Anything else, Johnny, that you think that the user should know?

    Yes, of course. So here, that Modelithics parts are scalable to different kind of parameters dimensions. So for example, here, that we have-- it can be scalable by different substrate, and also, you can change the simulation mode.

    So this takes into account all kinds of parasitic behavior interacting between the substrate here. You can, of course, change this to the ideal, or you can change it also at different simulation mode.

    I see.

    And you also can change the path dimension length with and these can affect the simulation result. And also, the orientation of the part to be mounted on the substrate, whether horizontal or vertical.

    I also want to give you something. So I said that MDLX part is Modelithics part object as well as our RF Toolbox circuit element object. But the user has to be careful that this has a two port.

    So if you see the terminal, you have a four terminal here. This is the because the Modelithics part, as a default, has two ports. So when you add this object to circuit, you have to specify very carefully to give four terminals whenever you add.

    So for example, I just wanted to show this part so that user can be aware of that. So let's say I just create the circuit object here, and I just wanted to add this object. So here, I say add this ATC 600 S model, which is, in this case, let's say, I just wanted to add in this series.

    So you have to give 004 here, the third and fourth element, because as I said, this is a two port element, which means you have to specify four terminals. And then you have to say C1 here, and that's it. So just make sure it's OK, and then as I said, here, now, you can specify also the S parameters of this circuit.

    And then you have to give here CKT, and then let me just-- I'm a little bit lazy, so let me copy-paste this here. Then-- oops.

    I think you need to define the ports. No? You have to define the ports 1 and 2. That's--

    Right, right, I forgot that. I'm sorry.

    No, no, no, I've been there several times, as well as with forgetting, too, that component on a has four terminus because it always is referred to a ground-- a ground plane.

    Yes. So this should work now. Yes, now you can get the s parameters.

    So we're looking now at the S11 of our capacitor essentially?

    Yes, so this was the last thing I wanted to mention, and yes.

    And with this syntax, I mean, the users can really, I don't know, do a FOR loop through all the capacitor or all the values, do essentially what-if analysis on different topologies, build different circuits, and do all of this programmatically. Is it right?

    Exactly. So the thing that we have now that-- if you remember, that with a search method, we have this MDLX part with a list of a capacitor, and you can make the FOR loop on this a variable C. And then adding, you can perform s parameters on each capacitor, or you can add this C to circuit using that FOR loop.

    So with our MATLAB capability, you can imagine that we can expand this Modelithics SELECT+ library beyond your imagination, so I'm really excited about this. And of course, if you go to the release note of RF Toolbox, or here, go to Application Base Example, and then you can find example that come with a Modelithics SELECT+ library.

    And example here is one is designed matching network with Modelithics SELECT+ library, and also, we updated the existing example with Modelithics SELECT+ library, which is, again, another one matching network for amplifier. This also go with the optimisation steps. So you can learn more, yeah, and then you can do more with this Modelithics SELECT+ library.

    Sounds great. Johnny, thank you very much. I mean, I love this demonstration. Thank you for showing it, and thank you for developing the feature. And look forward to more, of course.

    Thank you for the opportunity, and I really enjoy it. Thank you.

    View more related videos