Patents Assigned to The MathWorks, Inc.
  • 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: 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: 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
  • Patent number: 11144684
    Abstract: A device may analyze, by one or more processors, a model to identify a first set of model elements that are associated with a model element. The device may apply, by the one or more processors, one or more results from an analysis of the model to a first network unit to determine a complexity of the first network unit or a coupling of the first network unit to other model elements of the model. The device may generate, by the one or more processors, a second network unit, representing a second hierarchy of computation, from the first network unit based on the complexity or the coupling. The device may provide, by the one or more processors, the second network unit as a testing unit for testing the model, the second network unit comprising two or more model elements and one or more numeric expressions.
    Type: Grant
    Filed: April 27, 2017
    Date of Patent: October 12, 2021
    Assignee: The MathWorks, Inc.
    Inventors: Dixit Manoj Gangadhar, Prahladavaradan Sampath, Janaki Sivaramakrishnan, William J. Aldrich, Ebrahim Mehran Mestchian
  • Patent number: 11144434
    Abstract: Systems and methods for coverage analysis using context information are described. The systems and methods can be used to obtain program code and test information for testing the program code, the test information associated with context information for providing context for testing the program code. Coverage information can be generated by testing the program code according to the test information. A first association can be generated between the context information and the test information. A second association can be generated between the context information and the program code. A third association can be generated between the coverage information and the test information. A subset of the coverage information can be determined based on the third association and a fourth association between the test information and the program code determined based on the first and second associations. An indication of the subset of the coverage information can be displayed.
    Type: Grant
    Filed: December 31, 2019
    Date of Patent: October 12, 2021
    Assignee: The MathWorks, Inc.
    Inventors: William Potter, William Aldrich, Aaron Hughes, Anjali Joshi, Zsolt Kalmar, Ebrahim M. Mestchian
  • Publication number: 20210303271
    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: September 30, 2021
    Applicant: The MathWorks, Inc.
    Inventors: Joseph F. Hicklin, Claudia G. Wey, John W. Glass
  • Patent number: 11126407
    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 16, 2019
    Date of Patent: September 21, 2021
    Assignee: The MathWorks, Inc.
    Inventors: John E. Ciolfi, Sudha S. Dhoorjaty
  • Patent number: 11061539
    Abstract: A device receives information that identifies a primary node included in a computational graph. The primary node represents a first operation, that modifies a state value associated with the primary node and a reference node, when the primary node is executed. The device receives information that identifies the reference node included in the computational graph. The reference node represents a second operation, that modifies the state value associated with the primary node and the reference node, when the reference node is executed. The device obtains the computational graph that includes the primary node and the reference node, and executes the primary node and the reference node in a single iteration of the computational graph. The device modifies the state value, associated with the primary node and the reference node, based on executing the primary node and the reference node.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: July 13, 2021
    Assignee: The MathWorks, Inc.
    Inventor: Donald P. Orofino