Patents Assigned to The MathWorks, Inc.
  • Patent number: 11520956
    Abstract: Systems and methods automatically construct a realization of a model from an available set of alternative co-simulation components, where the realization meets one or more objectives, such as fidelity, execution speed, or memory usage, among others. The systems and methods may construct the realization model by setting up and solving a constrained optimization problem, which may select particular ones of the alternative co-simulation components to meet the objectives. The systems and methods may configure the realization, and execute the realized model through co-simulation. The systems and methods may employ and manage different execution engines and/or different solvers to run the realization of the model.
    Type: Grant
    Filed: June 21, 2021
    Date of Patent: December 6, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Haihua Feng, Tao Cheng, John E. Ciolfi, Pieter J. Mosterman, Fu Zhang
  • Patent number: 11501062
    Abstract: Systems and methods for displaying hierarchical table headers as disclosed. The systems and methods can include operations performed by a viewer engine. The operations can include detecting a user interaction with a display of a portion of data. The operations can further include determining a second portion of the data to display. The operations can additionally include obtaining data information for the second portion of the data. The data information can include information about headers for the second portion of the data and information about child-parent relationships between the headers. The operations can include determining one or more hierarchical headers for the second portion of the data. The operations can further include rendering a table including the second portion of the data. The operations can additionally include displaying a display depicted the one or more hierarchical headers and a subset of the table including the second portion of the data.
    Type: Grant
    Filed: February 13, 2020
    Date of Patent: November 15, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Peter Santos, Jason Voccia, Divyesh Jani, Stephen Scaringi
  • Patent number: 11454188
    Abstract: Systems and methods automatically rescale an original engine model so that it models an engine of a different size. The original engine model may be coupled to an engine controller model, and the systems and methods may also rescale the original controller model to produce a rescaled controller model matched to the rescaled engine model. The original engine model may include engine parameters and engine lookup tables, and the original controller model may include controller parameters and controller lookup tables. Rescaling factors indicating the size of the new engine being modeled may be received, and ratios may be computed as a function of the rescaling factors. Original engine parameters and controller parameters may be rescaled based on the ratios. Original engine lookup tables and controller lookup tables may be reshaped based on the ratios.
    Type: Grant
    Filed: June 2, 2017
    Date of Patent: September 27, 2022
    Assignee: The MathWorks, Inc.
    Inventor: Peter J. Maloney
  • Patent number: 11418555
    Abstract: Systems and methods stream an application on a computer system. A compressed archive of an installation directory of the application may be created and stored as a storage object. Two mount points may be established at the computer system. One mount point may provide a window to the storage object holding the compressed archive. The other mount point may present an interface to the installation directory. In response to requests by the application to access files from its installation directory, the systems and methods may retrieve the portion of the compressed archive containing that file from the storage object. The systems and methods may extract, e.g., decompress, the requested file from the retrieved page and serve it at the second mount point. The computer system may then provide the requested file to the application.
    Type: Grant
    Filed: July 31, 2020
    Date of Patent: August 16, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Mark A. Cafaro, Joseph P. Conti, Johan W. Pereira
  • Patent number: 11409504
    Abstract: Systems and methods provide, as part of an executable graphical model, a region for providing variants that includes one or more computational choices defining alternative execution implementations of the region. Conditions assigned to the one or more computational choices indicate which of the computational choices is active. The conditions specify logical expressions of variables that evaluate to True or False. For a given simulation of the executable graphical model, all of the logical expressions may evaluate to False, such that none of the computational choices are active. All of the computational choices of the executable graphical model may be removed for the given simulation.
    Type: Grant
    Filed: January 25, 2021
    Date of Patent: August 9, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Vaibhav Awale, Sudha S. Dhoorjaty, John E. Ciolfi
  • Patent number: 11409249
    Abstract: Exemplary embodiments simulate the eigenmodes of a flexible rotor in a model of a rotor and thus reduce the number of variables and computation expense required during simulation of the transverse motion response of the rotor. The exemplary embodiments may use data structures, such as lookup tables, to store precomputed information that may be used for the determining eigenmode properties as the values of one or more parameters affecting the eigenmode properties (e.g., speed, shaft temperature, bearing viscosity, normal force acting along the rotor shaft axis, turbine power level, turbine fluid flow rate, etc.) change during a simulation. The use of the data structures helps to reduce the computational expense during the simulation.
    Type: Grant
    Filed: January 30, 2020
    Date of Patent: August 9, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Martin Udengaard, Jocelyn Kluger
  • Patent number: 11410073
    Abstract: A device may generate an objective function for determining weights for potential features corresponding to training data. The objective function may be generated using a robust loss function such that the objective function is at least continuously twice differentiable. The objective function may comprise a neighborhood component analysis objective function that includes the robust loss function. The device may determine the weights for the potential features using the objective function. The determining may comprise optimizing a value of the objective function for each potential feature. The weights may represent predictive powers of corresponding potential features. The device may provide the weights for the potential features.
    Type: Grant
    Filed: May 31, 2017
    Date of Patent: August 9, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Ilya V. Narsky, Gautam V. Pendse
  • Patent number: 11403074
    Abstract: Systems and methods assist programmers in creating object oriented programs by automatically building smart callback functionality into custom created classes. A user may designate an event defined in a custom class. During object initialization, the systems and methods may automatically generate a callback property and may inject it in the class being initialized. The callback property may represent an interface through which callback functions may access the designated event. The systems and methods may apply one or more rules when generating the callback properties to facilitate access to the designated event enforcing naming standards and property behaviors, and provide interrupt, queuing, memory management, object destruction, and other services.
    Type: Grant
    Filed: September 28, 2020
    Date of Patent: August 2, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Varun R. Gandhi, Richard W. Ohman, Rahul Mitra
  • Patent number: 11379194
    Abstract: In accordance with some embodiments, a non-transitory computer-readable medium storing executable instructions that, when executed by a processor, may cause the processor to receive a value setting via a user interface associated with a first program code, and generate a second program code that, when executed, produces a computational result. To generate the second program code, the instructions, when executed by the processor, may cause the processor to obtain a portion of the first program code that, when executed with the value setting, generates the computational result, determine an organizational structure of the portion, the organizational structure including a plurality of stages, determine, in one or more of the plurality of stages, a first segment of code that accesses the value setting and a second segment of code that does not access the value setting, and replace the first segment with the value setting.
    Type: Grant
    Filed: March 2, 2021
    Date of Patent: July 5, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Joseph Hicklin, Claudia Wey
  • Patent number: 11360747
    Abstract: Systems and methods provide, as part of an executable graphical model, a region for providing variants that includes one or more computational choices defining alternative execution implementations of the region. Conditions assigned to the one or more computational choices indicate which of the computational choices is active. The conditions specify logical expressions of variables that evaluate to True or False. For a given simulation of the executable graphical model, all of the logical expressions may evaluate to False, such that none of the computational choices are active. All of the computational choices of the executable graphical model may be removed for the given simulation.
    Type: Grant
    Filed: December 14, 2020
    Date of Patent: June 14, 2022
    Assignee: The MathWorks, Inc.
    Inventor: John E. Ciolfi
  • Patent number: 11354463
    Abstract: A solver may generate a system of equations for an acausal model. A partitioning engine may transform at least some of the equations into groups of equations whose inputs/outputs are connected directly. The partitioning engine may transform at least some of the equations into groups of linear equations and/or groups of switched linear equations that are connected through nonlinear functions. The solver may determine input-output relationships of the groups of equations. A simulation model generator that may include a library of types of model elements may construct a causal simulation model.
    Type: Grant
    Filed: September 24, 2019
    Date of Patent: June 7, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Mohamed Babaali, Wurigen Bo, Kiran K. Kintali, Shomit Dutta, Ebrahim M. Mestchian, Naman Saraf
  • Patent number: 11327725
    Abstract: Systems and methods may aggregate and organize implicit and explicit initialization, reset, and termination operations defined throughout the hierarchy of an executable. The systems and methods may analyze the model and identify implicit and explicit initialization, reset, and termination operations defined at various hierarchical levels. The systems and methods may aggregate the implicit and explicit initialization, reset, and termination operations into an initialize callable unit, a reset callable unit, and a termination callable unit. The systems and methods may apply optimizations to the callable units, and resolve conflicts. The systems and methods may define a single entry point for each of the initialize, reset, and termination callable units.
    Type: Grant
    Filed: January 14, 2020
    Date of Patent: May 10, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Peter S. Szpak, Biao Yu, Alongkrit Chutinan
  • Publication number: 20220137934
    Abstract: Systems and methods for services for assisting programming are disclosed. The systems and methods can be used to, during edit time, for program code or data of interest, identify one or more services available to the program code or the data of interest, generating a context for the one or more services, execute code for the one or more services within the context to generate a result for each of the one or more services, analyze the result for each of the one or more services to select a subset of results based on criteria associated with the program code, the data of interest, or the one or more services, and offer, to a user, services corresponding to the subset of results or the subset of results as suggestions to facilitate further development of the program code or use of the data of interest.
    Type: Application
    Filed: March 24, 2020
    Publication date: May 5, 2022
    Applicant: The MathWorks, Inc.
    Inventors: Joseph F. Hicklin, Claudia G. Wey, John W. Glass
  • Patent number: 11314225
    Abstract: Systems and methods evaluate assessments on time-series data. An expression including temporal operators may be created for an assessment. The expression may be arranged in the form of an expression tree having nodes representing input data to the assessment and intermediate results of the expression. An assessment may be evaluated by performing a bottom-up traversal of the expression tree. One or more plots may be generated including a plot of the outcome of the assessment, e.g., pass, fail, or untested, plots of intermediate results of the expression and plots of input data as a function of time. Graphical affordance may be presented on the plots that mark the regions that may have contributed to a specific pass or fail result of the assessment, and points within the regions that resulted in the assessment passing or failing.
    Type: Grant
    Filed: December 9, 2019
    Date of Patent: April 26, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Yit Phang Khoo, Jean-François Kempf, Kalyan Bemalkhedkar, Mahesh Nanjundappa
  • Patent number: 11244090
    Abstract: Systems and methods decouple model components from a model execution style for which the model components are created, and the model components may be utilized in parent models having different execution styles. A model component may be partitioned into executable entities, and the entry points of the executable entities and their call styles may be identified. An adaptation layer that includes access points for the entry points may be constructed. The model component, including the adaptation layer, may be included in the model, and connection elements of the parent model may be connected to the access points of the adaptation layer. The execution call styles associated with the connection elements of the parent model may be bound to the execution call styles of the entry points as originally designed. The adaptation layer may manage translation of call styles and may coordinate scheduling of data communication with the model component.
    Type: Grant
    Filed: September 2, 2016
    Date of Patent: February 8, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Peter S. Szpak, Biao Yu, Alongkrit Chutinan
  • Publication number: 20220019915
    Abstract: Systems and methods as disclosed for selecting parameters for use by a system. The parameters can describe a behavior of the system, which can be represented by a model having an input and an output. The model can include an operation representable by a matrix. The parameters can include the input and output ranges of the operation, the dimensions of the matrix, a noise value for the system, and an overflow probability. A design environment can be configured to determine values or ranges of values for one or more of the parameters based on values or ranges of values of the remaining parameters. In some embodiments, the design environment can select, recommend, or validate a choice of datatype, minimum system noise, or the dimensions of the matrix. The model can be used to generate code, which can be used to configure the system to perform the operation.
    Type: Application
    Filed: July 20, 2020
    Publication date: January 20, 2022
    Applicant: The MathWorks, Inc.
    Inventors: Thomas A. BRYAN, Jenna L. WARREN
  • Patent number: 11226888
    Abstract: Systems and methods for function argument checking are disclosed. The systems and methods can use declarations and validation instructions based on the declarations. Validation instructions for a function can be generated automatically from a declaration for the function. The validation instructions can be executed in response to invocation of the function. The validation instructions can include instructions for determining whether an input satisfies a condition on a corresponding argument of the function, instructions for identifying a position of the input, and instructions for providing, in response to determining that the input does not satisfy the condition, an indication of the nonsatisfaction of the condition and the position. The condition can specify a datatype or size for the argument or one or more validation functions for checking the argument.
    Type: Grant
    Filed: January 14, 2020
    Date of Patent: January 18, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Halldor N Stefansson, Bryan T White, David A Foti, Jianzhong Xue
  • Patent number: 11216604
    Abstract: A model including a first co-simulation component and a second co-simulation component is analyzed. During execution of the model, the first co-simulation component outputs data to the second co-simulation component via a connection. The connection is declared as a continuous-time rate connection for input of the data into the second co-simulation component. Based on analyzing the model, the connection is identified as a discrete-continuous sample time connection based on data being communicated from the first co-simulation component to the second co-simulation component via the connection at a discrete-time rate when the model is executed in a co-simulation manner.
    Type: Grant
    Filed: June 2, 2017
    Date of Patent: January 4, 2022
    Assignee: The MathWorks, Inc.
    Inventors: Tao Cheng, Pieter J. Mosterman, Haihua Feng, Fu Zhang
  • Patent number: 11182132
    Abstract: A method may comprise determining, by executing a first model having first configuration parameters, a first result associated with the first model. The method may comprise determining, by executing a second model having second configuration parameters, a second result associated with the second model. The method may comprise determining, based on the first result, the second result, and equivalency criteria, that the second model is not functionally equivalent to the first model. The equivalency criteria may indicate that the second model is functionally equivalent to the first model when a difference between the second result and the first result satisfies a threshold. The method may comprise modifying a configuration parameter, of the second configuration parameters, to cause the second model to improve toward functional equivalence with the first model.
    Type: Grant
    Filed: March 7, 2019
    Date of Patent: November 23, 2021
    Assignee: The MathWorks, Inc.
    Inventors: Ravi Vompolu, Ivan Garcia, Gareth Thomas, Paul Cox, Ebrahim Mestchian, Pieter J. Mosterman
  • Patent number: 11169993
    Abstract: According to some embodiments, a method for making input data available for processing by one or more processors comprises storing one or more parameters, wherein the one or more parameters comprise information identifying a location of the input data; and creating a datastore object using the one or more parameters, wherein the datastore object interfaces the input data and includes a read method for reading a chunk, the chunk being a subset of the input data, and having a size that does not exceed a memory size assigned to the one or more processors. According to some embodiments, the one or more parameters further comprise one or more of a type of the input data; a format of the input data; an offset for reading from the input data; a size of the chunk; a condition for determining the chunk; and a query for deriving the input data.
    Type: Grant
    Filed: August 13, 2014
    Date of Patent: November 9, 2021
    Assignee: The MathWorks, Inc.
    Inventors: Penelope Anderson, Richard Amos, Yashwanth Annapureddy, Nicholas Haddad, Aaditya Kalsi, Thomas Lane, Jocelyn Martin, Michael Procopio, Anandan Rangasamy, James Stewart, Wei Wang, Kari Sortland