Patents Assigned to The MathWorks, Inc.
  • Patent number: 9330131
    Abstract: A device receives a conflicted file, with a structured data format, that includes a conflict marker that does not comply with the structured data format. The conflict marker identifies first edited information and second edited information included in the conflicted file. The first edited information and the second edited information comply with the structured data format, and include information that has been modified in different versions of a shared file to create the conflicted file. The device detects that the conflicted file includes the conflict marker, and identifies, based on the detected conflict marker, the first edited information and the second edited information. The device determines that at least one of the first edited information or the second edited information is to be provided to the application for processing, and provides, based on the determining, the first edited information or the second edited information to the application for processing.
    Type: Grant
    Filed: February 12, 2013
    Date of Patent: May 3, 2016
    Assignee: The MathWorks, Inc.
    Inventor: Timothy Hosey
  • Patent number: 9329897
    Abstract: A system is configured to create a profile that allows a job to be performed within a distributed computing environment comprising one or more computing devices; provide an interface that allows the profile to be specified; obtain a scheduler component via the interface, where the scheduler component identifies a scheduler to be used to perform the job and an application that at least one of the computing devices, that is specified by the scheduler, is to use when performing the job; obtain, via the interface, a project component that identifies data on which the job is to be based; and create the profile based on the scheduler component and the project component.
    Type: Grant
    Filed: October 17, 2011
    Date of Patent: May 3, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Elwin Yam Ming Chan, H. Narfi Stefansson, Portia O'Callaghan, Loren Dean
  • Patent number: 9323851
    Abstract: A system may receive a model, extract information from the model, form a group of tags using the extracted information, and associate the group of tags with the model. The system may further receive a search query including one or more sequences of characters and determine whether to provide the model in a list of models created for the search query, based on the one or more sequences of characters and the group of tags.
    Type: Grant
    Filed: November 6, 2012
    Date of Patent: April 26, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Pieter J. Mosterman, Farid A. Abi-Zeid, Hidayet Tunc Simsek, Claudia Gaudagnini Wey, Mojdeh Shakeri, Jay Ryan Torgerson
  • Patent number: 9319666
    Abstract: A device is configured to receive an image including a calibration pattern and apply a filter to the image based on a first coordinate plane. The device is configured to determine a first set of response peaks associated with the calibration pattern based on applying the filter, the first set of response peaks being associated with a set of control points and a set of boundary points. The device is configured to determine a second set of response peaks associated with the calibration pattern based on a second coordinate plane and a third coordinate plane, the second set of response peaks being associated with the boundary points. The device is configured to determine the control points based on determining the first set of response peaks and the second set of response peaks, and provide information that identifies the control points.
    Type: Grant
    Filed: June 3, 2013
    Date of Patent: April 19, 2016
    Assignee: The MathWorks, Inc.
    Inventor: Dimitri Lisin
  • Patent number: 9317551
    Abstract: A device provides for display a technical computing environment (TCE)-based search engine user interface, and receives a query from a user via the TCE-based search engine user interface. The device divides the query into one or more query elements, and processes the one or more query elements based on at least one of query content, information requested by the query, a model associated with the query, or an execution result of the model. The device transforms the query into another query, different than the query, based on the processed one or more query elements, and provides the other query to the TCE-based search engine for further processing.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: April 19, 2016
    Assignee: The MathWorks, Inc.
    Inventor: Justyna Zander
  • Patent number: 9317331
    Abstract: In an embodiment, a method for interactively varying scheduling of a multi-threaded application executing on a symmetric multi-core processor provides an interface in a co-simulation design environment. The interface is associated with a multi-threaded application executing on a target processor that includes symmetric processor cores. The method also sets a scheduling attribute of the multi-threaded application using the interface. The setting occurs when the multi-threaded application is executing. The method further receives data associated with the executing of the multi-threaded application in the co-simulation design environment when the multi-threaded application is executing subsequent to the setting of the scheduling attribute.
    Type: Grant
    Filed: October 31, 2012
    Date of Patent: April 19, 2016
    Assignee: The MathWorks, Inc.
    Inventors: David Koh, Murat Belge
  • Patent number: 9317628
    Abstract: The present invention provides a method and system for automatic verification of automatically generated standalone code intended for execution on a target computing platform against its original design simulated in a simulation environment. The present invention also applies to execution comparisons between two implementations, such as two simulations, one simulation and one standalone code implementation, or two standalone code implementations. Block diagrams can be used to create a comparison model that compares two implementations. The comparison of different implementations can be performed at a block level, a subsystem level, a model level, or multi-model level. The present invention allows automatic comparison once a user supplies the intermediate outputs and/or signals that the user wants to compare and monitor. Reports can be generated to show the statistics of the comparison results.
    Type: Grant
    Filed: December 29, 2005
    Date of Patent: April 19, 2016
    Assignee: The MathWorks, Inc.
    Inventors: David Koh, Brian K. Ogilvie
  • Patent number: 9317408
    Abstract: A system and method introduces one or more errors into computer programming code generated from a model or other source program. The one or more errors are not present in the model, but are introduced into the code generated from the model. The one or more errors may simulate one or more bugs in the code generation process. The generated code, including the one or more introduced errors, may be analyzed by one or more verification tools. The one or more verification tools examine the generated code in an effort to detect the one or more errors that were introduced. The one or more verification tools may compare the generated code to the model or source program. If the one or more verification tools is able to detect the one or more introduced errors, then the one or more verification tools may be considered to be validated.
    Type: Grant
    Filed: December 15, 2011
    Date of Patent: April 19, 2016
    Assignee: THE MATHWORKS, INC.
    Inventor: Peter S. Szpak
  • Patent number: 9317629
    Abstract: The present invention provides a method and system for automatic verification of automatically generated standalone code intended for execution on a target computing platform against its original design simulated in a simulation environment. The present invention also applies to execution comparisons between two implementations, such as two simulations, one simulation and one standalone code implementation, or two standalone code implementations. Block diagrams can be used to create a comparison model that compares two implementations. The comparison of different implementations can be performed at a block level, a subsystem level, a model level, or multi-model level. The present invention allows automatic comparison once a user supplies the intermediate outputs and/or signals that the user wants to compare and monitor. Reports can be generated to show the statistics of the comparison results.
    Type: Grant
    Filed: April 22, 2010
    Date of Patent: April 19, 2016
    Assignee: The MathWorks, Inc.
    Inventors: David Koh, Brian K. Ogilvie
  • Patent number: 9311434
    Abstract: A computing device may create a time based block diagram. The time based block diagram may comprise a ladder logic diagram and at least one block. The at least one block may correspond to at least one of a differential equation system or a difference equation system. The computing device may also execute the time based block diagram to simulate behavior of a dynamic system, device, or process. Executing the time based block diagram may include executing the ladder logic diagram and the at least one block. The computing device may further output results of the simulation of the behavior of the system, device, or process based on executing the time based block diagram.
    Type: Grant
    Filed: March 26, 2012
    Date of Patent: April 12, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Joel Berg, Krishna Tamminana, Jagadish Gattu
  • Patent number: 9311111
    Abstract: A language processing environment provides facilities for defining and using handle classes. A handle class is a class that always and only exists as a handle to stored data, yet that data is accessed in the same manner as with non-handle classes. The language processing environment provides syntax such that all values in the language are members of some class and all classes are defined using the same syntax. Methods and properties are supported on both handle and non-handle classes.
    Type: Grant
    Filed: July 10, 2008
    Date of Patent: April 12, 2016
    Assignee: The Mathworks, Inc.
    Inventor: David A. Foti
  • Patent number: 9311057
    Abstract: Methods, mediums and systems are provided to enable a user to program the behaviors of a Unified Modeling Language (UML) model in a graphical programming or modeling environment, such as block diagram programming environment. The UML model is exported into a text-based format, which is subsequently imported into the graphical programming or modeling environment. The graphical programming or modeling environment represents the UML model using functional blocks so that the user can program the behaviors of the UML model. The graphical programming or modeling environment also enables the user to simulate or execute the UML model to determine the behaviors of the UML model.
    Type: Grant
    Filed: August 10, 2007
    Date of Patent: April 12, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Jean-Yves Brunel, Nathan E. Brewton, Ebrahim Mehran Mestchian, Pieter J. Mosterman
  • Patent number: 9311436
    Abstract: A device may receive function information that describes a caller element that calls a called element that is separate from the caller element. The function information may identify a name or reference of the called element, a passed input, and a passed output. The passed input may be provided by the caller element to the called element, and the passed output may be received by the caller element from the called element. The caller element may be associated with a caller model, and the called element may be associated with a called model. The device may identify the called element, and may execute the caller element in a simulation environment. Execution of the caller element may cause execution of the called element without causing execution of an entirety of the called model. The device may receive the passed output from the called element based on executing the called element.
    Type: Grant
    Filed: May 15, 2015
    Date of Patent: April 12, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Matthew J. Englehart, Srinath Avadhanula, Aravind Pillarisetti, Nirmal K. Gunaseelan, Peter S. Szpak, Hidayet T. Simsek
  • Patent number: 9304840
    Abstract: A system and method may generate executable block diagrams in which at least some of the blocks run in accordance with message-based execution semantics. A message may include an input data payload that does not change over time, and the message may persist for only a determined time interval during execution of block diagram. A message-based execution engine may control execution of message-based blocks in which a source block may generate a message at a particular point in time, the message may be sent to one or more destination blocks triggering execution of those blocks, and the message may be destroyed on or after a determined time interval. Other execution domains, such as a time-based or state-based execution domain, may be provided, and the system may implement a hybrid execution model.
    Type: Grant
    Filed: January 24, 2014
    Date of Patent: April 5, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Hidayet T. Simsek, Vijaya Raghavan, Ramamurthy Mani
  • Patent number: 9304743
    Abstract: A device may receive input text via a programming environment associated with a programming language. The device may tokenize the input text to generate tokenized text. The device may identify an invalid token string, based on the tokenized text, that is invalid for the programming language. The device may identify a token category pattern based on the invalid token string. The token category pattern may be a first sequence of token categories. The device may identify a replacement pattern based on the token category pattern. The replacement pattern may be a second sequence of token categories that is different from the first sequence of token categories. The device may identify a replacement token string based on the replacement pattern. The device may determine valid program code, associated with the programming language, based on the replacement token string. The device may provide the valid program code.
    Type: Grant
    Filed: April 14, 2015
    Date of Patent: April 5, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Jason D. Breslau, Fnu Balaji
  • Patent number: 9304838
    Abstract: A device may receive a model including a group of blocks, and may receive a command to execute the model. The device may assign a parameter sample time to a subset of blocks of the group of blocks. The parameter sample time may permit a block, of the subset of blocks, to be executed based on a parameter change event detected during the execution of the model. The device may cause the model to be executed after assigning the parameter sample time to the subset of blocks. The device may detect a parameter change event, associated with the model, prior to the execution of the model being completed. The parameter change event may include an event that is external to the execution of the model. The device may cause at least one block, of the subset of blocks, to be executed based on the detecting the parameter change event.
    Type: Grant
    Filed: August 24, 2015
    Date of Patent: April 5, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Arwen M. Warlock, Biao Yu, Matthew J. Englehart, Peter S. Szpak, Murali K. Yeddanapudi, Yuan Cao
  • Patent number: 9298858
    Abstract: A system generates a simplified model from an original model, where the simplified model exhibits the same error or undesired behavior as the original model but is smaller. A condition may be defined that, when evaluated, may determine whether the error or undesired behavior occurs in a model. A search engine may identify one or more portions of the original model as candidates for deletion. A series of intermediate models of decreasing size may be constructed by deleting selected ones of the candidate portions, provided that the intermediate models also produce the same error or undesired behavior. The system may continue an iterative process until it resolves to the simplified model, and the simplified model may be analyzed to locate the source or cause of the error or undesired behavior.
    Type: Grant
    Filed: October 12, 2012
    Date of Patent: March 29, 2016
    Assignee: THE MATHWORKS, INC.
    Inventor: Agnivesh Tomar
  • Patent number: 9298862
    Abstract: A system and method optimizes hardware description generated from a graphical program or model automatically. The system may include a streaming optimizer, a resource sharing optimizer and a delay balancing engine. The streaming optimizer transforms one or more vector data paths in the source model to scalar data paths or to a smaller-sized vector data paths. The resource sharing optimizer may replace multiple blocks of the source model that are functionally equivalent with a single shared block. The streaming and resource sharing optimizers may also configure portions of the modified model to execute at a faster rate. The delay balancing engine may examine the modified model to determine whether any delays or latencies have been introduced. If so, the delay balancing engine may insert one or more blocks into the modified model to correct for any data path misalignment caused by the introduction of the delays or latencies.
    Type: Grant
    Filed: April 4, 2014
    Date of Patent: March 29, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Girish Venkataramani, Kiran Kintali
  • Patent number: 9292631
    Abstract: The present invention provides a method and system for automatic verification of automatically generated standalone code intended for execution on a target computing platform against its original design simulated in a simulation environment. The present invention also applies to execution comparisons between two implementations, such as two simulations, one simulation and one standalone code implementation, or two standalone code implementations. Block diagrams can be used to create a comparison model that compares two implementations. The comparison of different implementations can be performed at a block level, a subsystem level, a model level, or multi-model level. The present invention allows automatic comparison once a user supplies the intermediate outputs and/or signals that the user wants to compare and monitor. Reports can be generated to show the statistics of the comparison results.
    Type: Grant
    Filed: April 22, 2010
    Date of Patent: March 22, 2016
    Assignee: THE MATHWORKS, INC.
    Inventors: David Koh, Brian K. Ogilvie
  • Patent number: 9292419
    Abstract: A device receives code for a technical computing environment, and receives conditions for executing the code. The device performs a static analysis of the code, based on the conditions, to generate static analysis information for the code, and executes the code in the technical computing environment based on the conditions. The device determines coverage information associated with the executing code, where the coverage information provides a measure of completeness associated with the executing code. The device compares the static analysis information and the coverage information to determine confidence information associated with the coverage information, and outputs or stores the coverage information and the confidence information.
    Type: Grant
    Filed: May 29, 2014
    Date of Patent: March 22, 2016
    Assignee: The MathWorks, Inc.
    Inventors: Kiran K. Kintali, Anand Krishnamoorthi, Ebrahim Mestchian, Richard M. McKeever