Patents Assigned to The MathWorks, Inc.
  • Patent number: 8983823
    Abstract: A system and method automatically generates an object-oriented, textual program from a graphical model, and verifies the performance of the textual program as compared to the graphical model. The graphical model may have a plurality of interconnected blocks, and each block may have a plurality of parameters. One or more of the blocks are mapped to a system object, and the block's parameters are mapped to properties of the system object. An object-oriented, executable textual string is generated automatically for the block. The generated string includes at least one command to: instantiate a system object having functionality that matches the block; set one or more properties of the system object based on the block's parameters; and run the instantiated object.
    Type: Grant
    Filed: March 11, 2010
    Date of Patent: March 17, 2015
    Assignee: The MathWorks, Inc.
    Inventors: David Koh, Brian K. Ogilvie, Zhongxin Li, Shi Chao Zhang, Jihad E. Ibrahim
  • Patent number: 8984496
    Abstract: The present invention provides systems and methods which allow the translation of a first representation into an intermediate representation and then into a target representation. The first representation can take numerous forms, including a system model that contains hardware components, software components or some combination thereof. Additionally, the target representation can be in the form of a desired system implementation. The intermediate representation generated from the first representation can include both parallel and serial processes from the first representation. This intermediate representation then uses both serial and parallel processing techniques operating on the system model from within a single intermediate representation to translate the system model of the first representation into a target representation. The target representation may be in a format that is readily used in the creation of a system implementation by a user.
    Type: Grant
    Filed: May 16, 2005
    Date of Patent: March 17, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Charles J. Devane, Kiran Kumar Kintali
  • Patent number: 8984494
    Abstract: An embodiment can include one or more computer readable media storing executable instructions for performing execution scheduling for code generated from an executable graphical model. The media can store instructions for accessing a first code portion having a first priority, and a second code portion having a second priority, where the second priority has a relationship with the first priority. The media can store instructions for accessing target environment characteristics that indicate a performance of the target environment, and for performing execution scheduling for the first code portion and the second code portion, the execution scheduling taking into account the target environment characteristics, the execution scheduling using an execution schedule.
    Type: Grant
    Filed: October 21, 2013
    Date of Patent: March 17, 2015
    Assignee: The MathWorks, Inc.
    Inventors: James E. Carrick, Biao Yu
  • Publication number: 20150067640
    Abstract: In an embodiment, a method allows interacting with a textual programming language in a development environment. The development environment includes a first field and a second field related to the first field. An entry for the first field is received at the development environment. One or more required programming structure attributes for the second field are determined based on the entry for the first field. A first GUI of one or more input suggestions for the second field is generated. The one or more input suggestions for the second field comply with the one or more required programming structure attributes for the second field. The first GUI is displayed in connection with the textual programming language to illustrate one or more input suggestions for the second field.
    Type: Application
    Filed: August 29, 2013
    Publication date: March 5, 2015
    Applicant: The MathWorks, Inc.
    Inventors: John E. Booker, Richard M. Mckeever, Aaron J. Powers
  • Patent number: 8972933
    Abstract: Exemplary embodiments may provide methods, systems and devices for providing non-literal representations of programming language code. The non-literal representation of a portion of code may provide a representation of the semantics of the portion of code that is different from the source code representation. The non-literal representation may change the way the code is output to a user in order to improve readability of the source code, and may not modify the underlying structure or semantics of the code. While improving readability of the code, the non-literal representation may also retain important information about the underlying code associated with the non-literal representation.
    Type: Grant
    Filed: June 24, 2013
    Date of Patent: March 3, 2015
    Assignee: The MathWorks, Inc.
    Inventor: Stephen C. Johnson
  • Patent number: 8972931
    Abstract: Functional testing of computer programming code generated from an executable graphical model is performed. The model may include a plurality of graphical objects. The generated code may be stand-alone code, and may include a plurality of functions. A designation of one of the graphical objects may be received. The designated object has input/output defined graphically in the model. Meta-data mapping the designated object to one or more functions of the generated code may be created. The meta-data may also map the graphically defined input/output for the designated object to function input/output of the one or more functions of the generated code. A function interface may be generated using the meta-data that includes a call to the one or more functions, and the function input/output. During execution of the model, execution of the designated object is by-passed and the function interface and the portion of the generated code are executed.
    Type: Grant
    Filed: October 31, 2011
    Date of Patent: March 3, 2015
    Assignee: The MathWorks, Inc.
    Inventor: Aravind Pillarisetti
  • Patent number: 8965742
    Abstract: The illustrative embodiments of this invention are directed to a method, a medium and a system for realizing resettable hierarchically scoped variables in a graphical modeling environment on a computing device. The method includes creating at least one resettable variable in a model within the graphical modeling environment, wherein the resettable variable is hierarchically scoped. The resettable variable is reset to a preset value before or during a subsequent invocation of a part of the model that contains the resettable variable. The graphical modeling environment may be a state diagramming environment or the graphical modeling environment may be a time-based graphical modeling environment.
    Type: Grant
    Filed: August 6, 2013
    Date of Patent: February 24, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Vijay Raghavan, Ebrahim Mehran Mestchian
  • Patent number: 8966456
    Abstract: A class definition syntax that leverages the array and math-oriented nature of a dynamically typed array-based programming language is discussed. Some embodiments of the present invention provides a mechanism for using meta-data to define a class implemented in the dynamically typed array-based programming language. The meta-data provide an easy way to provide class definitions and allow a user to access the class definitions from objects. The meta-data also support extension of class definitions without introducing backward incompatibility.
    Type: Grant
    Filed: July 17, 2006
    Date of Patent: February 24, 2015
    Assignee: The MathWorks, Inc.
    Inventor: David A. Foti
  • Patent number: 8949807
    Abstract: A device receives, via a technical computing environment, a program that includes a parallel construct and a command to be executed by graphical processing units, and analyzes the program. The device also creates, based on the parallel construct and the analysis, one or more instances of the command to be executed in parallel by the graphical processing units, and transforms, via the technical computing environment, the one or more command instances into one or more command instances that are executable by the graphical processing units. The device further allocates the one or more transformed command instances to the graphical processing units for parallel execution, and receives, from the graphical processing units, one or more results associated with parallel execution of the one or more transformed command instances by the graphical processing units.
    Type: Grant
    Filed: September 30, 2013
    Date of Patent: February 3, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Halldor N. Stefansson, Edric Ellis
  • Patent number: 8949532
    Abstract: A system receives cache conditions and software information related to a software application, and automatically generates an optimal cache management scheme for the software application based on the received cache conditions and software information.
    Type: Grant
    Filed: March 31, 2014
    Date of Patent: February 3, 2015
    Assignee: The MathWorks, Inc.
    Inventors: David Koh, Murat Belge
  • Patent number: 8943474
    Abstract: A device receives programming code, corresponding to a dynamic programming language, that is to be executed by a computing environment, and executes the programming code. When executing the programming code, the device maintains a program counter that identifies an execution location within the programming code, and select blocks of the programming code based on the program counter. The blocks correspond to segments of the programming code, and are associated with type-based constraints that relate to types of variables that are used by the block. When executing the programming code, the device also compiles the selected blocks, caches the compiled blocks along with the type-based constraints, generates linking information between certain ones of the compiled blocks based on the type-based constraints, and executes the compiled blocks in an order based on the program counter, the type-based constraints, and the linking information.
    Type: Grant
    Filed: October 24, 2012
    Date of Patent: January 27, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Ayon Basumallik, Brett W. Baker, Nikolay Mateev, Hongjun Zheng
  • Patent number: 8943470
    Abstract: A computing device may be configured to interact with a requirement object using an object-based requirements framework. The computing device may further provide a design to the object-based requirements framework. The design may comply with design criteria of the object-based requirements framework. The computing device may also determine whether the design complies with the requirement object. The determining may be based on the interacting, and may produce a result.
    Type: Grant
    Filed: September 23, 2011
    Date of Patent: January 27, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Matthew Brian Behr, Pieter J. Mosterman
  • Patent number: 8938710
    Abstract: A method of preventing interference between subsystem blocks includes obtaining an integrity level for a first subsystem block, obtaining an integrity level for a second subsystem block, assigning an integrity level property to at least one input port of the first block, the integrity level property assigned to the input port of the first block being based on the integrity level defined for the first block, and assigning an integrity level property to at least one output port of the second block, the integrity level property assigned to the output port of the second block being based on the integrity level defined for the second block. The method further includes evaluating the integrity level property of at least one input/output pair to determine whether an inappropriate connection exists, and performing a first action when an inappropriate connection exists, or performing a second action when an appropriate connection exists.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: January 20, 2015
    Assignee: The MathWorks, Inc.
    Inventor: Pengcheng Wu
  • Patent number: 8938381
    Abstract: A system receives a model, internals associated with a target processor, and code information associated with the target processor, and obtains a bit-true model simulation for the target processor based on the model, the target processor internals, and the target processor code information.
    Type: Grant
    Filed: July 15, 2013
    Date of Patent: January 20, 2015
    Assignee: The MathWorks, Inc.
    Inventor: David Koh
  • Patent number: 8935133
    Abstract: A computing device may be used to create a model that includes a block. The block may represent a function corresponding to a simulation. Measurement points may be inserted into the model. The model may be used to create a simulation, and the measurement points may be used to measure operational characteristics corresponding to the block.
    Type: Grant
    Filed: March 26, 2012
    Date of Patent: January 13, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Joel Berg, Venkata Tamminana, Jagadish Gattu
  • Patent number: 8935682
    Abstract: A device initiates a technical computing environment (TCE), and receives, via the TCE, a program command that permits the TCE to access a graphical processing unit that is remote to the device, where the program command permits the TCE to seamlessly transfer data to the remote GPU. The device transforms, via the TCE, the program command into a program command that is executable by the remote GPU, and provides the transformed program command to the remote GPU for execution. The device also receives, from the remote GPU, one or more results associated with execution of the transformed program command by the remote GPU, and utilizes the one or more results via the TCE.
    Type: Grant
    Filed: September 6, 2013
    Date of Patent: January 13, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Halldor N. Stefansson, Edric Ellis, Jocelyn Luke Martin
  • Patent number: 8933963
    Abstract: A system may include a memory that stores instructions and a processor to execute the instructions to create a first set of objects, describing a graphical scene, in a first data structure based on data relating to the graphical scene. The processor may create a second set of objects in a second data structure based on the first set of objects in the first data structure, where at least one object of the first set of objects is associated with at least one object of the second set of objects and one or more properties for an object of the second set of objects is based on information associated with the first data structure. The processor may modify the second set of objects and provide the modified second set of objects to a browser for rendering the graphical scene.
    Type: Grant
    Filed: June 14, 2013
    Date of Patent: January 13, 2015
    Assignee: The MathWorks, Inc.
    Inventor: Michael P. Garrity
  • Patent number: 8935137
    Abstract: A first block may be received. The first block may represent part of at least a portion of a block diagram model. A Jacobian of the first block may be determined. The Jacobian of the first block may be stored as a first graph.
    Type: Grant
    Filed: November 8, 2011
    Date of Patent: January 13, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Zhi Han, Fu Zhang, Murali K. Yeddanapudi, Pieter Johannes Mosterman
  • Patent number: 8930387
    Abstract: In an illustrative embodiment, an apparatus, computer-readable medium, system, or method may be configured to suggest correct identifiers. Frequencies of occurrence of expected identifiers may be determined. One or more unrecognized identifiers may be detected. One or more first numerical scores indicating that one or more unrecognized identifiers were provided to the computing environment in place of one or more of the expected identifiers may be calculated. Second numerical scores indicating that the unrecognized identifiers were intended to include expected identifiers may also be calculated. The second numerical scores may be calculated using the first numerical scores and the frequencies of occurrence of the expected identifiers. One or more expected identifiers may be selected based on the second set of numerical scores.
    Type: Grant
    Filed: December 7, 2012
    Date of Patent: January 6, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Joseph F. Hicklin, Audrey L. Benevento
  • Patent number: 8930881
    Abstract: A computer-implemented method for providing an informal interface and a formal interface to a computing application using a computer is provided. The informal interface includes first routines, the first routines using an informal input format. The method also includes providing a formal interface using the computer, where the formal interface includes second routines. The second routines support developer functionality, and the second routines using a formal input format. The method includes receiving a first input having a first routine input format, the first routine input format complying with the informal input format, or a second input having a second routine input format, the second routine input format complying with the formal input format. The method includes processing the received first input or the received second input and performing a computing operation based on the processing.
    Type: Grant
    Filed: June 6, 2012
    Date of Patent: January 6, 2015
    Assignee: The MathWorks, Inc.
    Inventors: Steven Eddins, Michelle T. Hirsch, Loren Shure, Joseph F. Hicklin, John Norris Little, Portia O'Callaghan