Patents Assigned to The MathWorks, Inc.
-
Patent number: 9983869Abstract: Exemplary embodiments provide adapted components that may be used by a computer program under different execution contexts. The adapted components may include platform independent source code which may be executed regardless of the execution context in which the component is deployed. Adaptation logic may wrap the execution context independent component in a wrapper. The wrapper may perform data marshaling between the execution context independent component and a computer program invoking the execution context independent component, or the host system on which the computer program is deployed. The execution context independent component may be adapted to a new execution context dynamically the first time that the execution context independent component is invoked in the execution context. Thereafter, the execution context independent component may be invoked statically without the need to re-adapt the component.Type: GrantFiled: July 31, 2014Date of Patent: May 29, 2018Assignee: The MathWorks, Inc.Inventor: Peter Hartwell Webb
-
Patent number: 9952837Abstract: A system and method supports reusing model components or component artifacts in a first modeling environment where the model components or artifacts were created in a second environment. An interface to the model components or artifacts from the first modeling environment is analyzed, and compared to an interface from the second environment. A wrapper object is constructed to convert between differences identified among the two interfaces. Utilizing the wrapper object, the model components or component artifacts are reused in the second environment.Type: GrantFiled: April 1, 2015Date of Patent: April 24, 2018Assignee: The MathWorks, Inc.Inventors: David Maclay, Jonathan J. Fielder
-
Patent number: 9946668Abstract: In one embodiment, a method of implementing interrupt prioritization and preemption in a modeling environment is provided. The method may include obtaining a model including interrupt-generating components in the modeling environment, obtaining information describing interrupts in the model, and using the information describing the interrupts in the model to automatically generate code for prioritizing the interrupts in the modeling environment.Type: GrantFiled: May 23, 2014Date of Patent: April 17, 2018Assignee: The MathWorks, Inc.Inventors: Zijad Galijasevic, Antonin Ancelle, Murat Belge
-
Patent number: 9933929Abstract: A device may generate a graph of a set of elements included in a graphical user interface. An attribute of an element, of the set of elements, may be represented by a vertex of the graph. A layout relationship associated with the set of elements may be represented by an edge of the graph. The device may detect a change to the graphical user interface from a first display condition to a second display condition. The device may determine another vertex location for the vertex corresponding to another attribute for the element based on detecting the change from the first display condition to the second display condition and based on the graph of the set of elements. The device may provide, for display, the set of elements in the second display condition based on the other attribute for the element.Type: GrantFiled: April 2, 2015Date of Patent: April 3, 2018Assignee: The MathWorks, Inc.Inventors: Alice Pitsillides, Christian A. Portal, Jyoti Gandhe, Joseph F. Hicklin
-
Patent number: 9934004Abstract: A computer readable medium including executable instructions that when executed perform a method for validating an optimization in generated code using an executable constraints document is provided. The medium can include instructions for relating an assumption to the optimization during code generation. The medium can include instructions for generating the executable constraints document during the code generation, the executable constraints document including information about the relating; and the medium can include instructions for executing the constraints document when the validating is performed, the validating including performing an operation based on a validation result produced by the validating, where the operation includes displaying the validation result to a user, storing the validation result, sending the validation result to a destination, or modifying the generated code.Type: GrantFiled: March 31, 2014Date of Patent: April 3, 2018Assignee: The MathWorks, Inc.Inventors: Aravind Pillarisetti, Peter S. Szpak, Jesung Kim, Xiaocang Lin, Pieter J. Mosterman
-
Patent number: 9891894Abstract: A device may receive a model for code generation. The device may determine to preserve continuity with a first generated code associated with the model. The device may receive, based on determining to preserve continuity, a first generation record associated with the first generated code. The first generation record may include information associated with generation of the first code. The device may generate second code based on the model and the first generation record. The device may create a second generation record based on the second generated code. The second generation record may include information associated with generation of the second code. The device may provide the second generated code.Type: GrantFiled: August 14, 2013Date of Patent: February 13, 2018Assignee: The MathWorks, Inc.Inventors: Matthew J. Englehart, Xiaocang Lin, Hidayet T. Simsek, Peter S. Szpak, Michael D. Tocci
-
Patent number: 9886008Abstract: Embodiments provide techniques, computer-readable media, and devices for allowing users to perform interactive design of controllers, such as PID controllers, in a free-form modeling environment. Users can tune controllers using characteristics familiar to typical users rather than having to specify gain values for the controller, which may be difficult for a user to relate to the performance of a controller.Type: GrantFiled: June 7, 2013Date of Patent: February 6, 2018Assignee: The MathWorks, Inc.Inventors: Pascal Gahinet, Rong Chen, Bora Eryilmaz, Baljeet Singh
-
Patent number: 9886268Abstract: 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: GrantFiled: December 22, 2015Date of Patent: February 6, 2018Assignee: The MathWorks, Inc.Inventors: Steven L. Eddins, Michelle T. Hirsch, Loren Shure, Joseph F. Hicklin, John N. Little, Portia O'Callaghan
-
Patent number: 9880922Abstract: A system and method automatically generates graphical model from an object-oriented, textual program, and verifies the performance of the graphical model to the textual program. The textual program may include a plurality of system objects having properties. The objects may be mapped to graphical model blocks that have parameters. The properties of the system objects may be mapped to the parameters of the graphical model blocks.Type: GrantFiled: October 10, 2014Date of Patent: January 30, 2018Assignee: The MathWorks, Inc.Inventors: David Koh, Brian K. Ogilvie, Zhongxin Li, Shi Chao Zhang, Jihad E. Ibrahim
-
Patent number: 9880925Abstract: A system may obtain an executable code segment of program code. The executable code segment may be associated with an emitter, and the program code, when executed, may be associated with a plurality of execution states. Each execution state, of the plurality of execution states, may correspond to a state of execution at a point in the execution of the program code that causes an event, of the plurality of events. The system may execute the executable code segment. The system may receive, from the emitter and based on executing the executable code segment, a program state corresponding to the particular execution state. The emitter may emit the information based on a particular event caused by executing the executable code segment. The system may collect the program state and information describing the particular event.Type: GrantFiled: September 28, 2015Date of Patent: January 30, 2018Assignee: The MathWorks, Inc.Inventors: Joseph R. Bienkowski, Bryan T. White, Christian R. Weigandt, Koh M. Shimizu, Jason D. Breslau
-
Patent number: 9871697Abstract: Exemplary embodiments allow a user to create configurations for use in distributed computing environments. Configurations can be arranged in hierarchies in which elements of the hierarchy can inherit characteristics from elements in other layers of the hierarchy. Embodiments also allow a user to flatten a hierarchical configuration to remove hierarchical dependencies and/or inheriting capabilities of elements in the hierarchy. Exemplary embodiments further allow users to deploy a distributed computing configuration on their desktop to evaluate performance of the configuration and then deploy the configuration in a distributed computing environment without having to change programming code run on the desktop/distributed computing environment.Type: GrantFiled: August 5, 2016Date of Patent: January 16, 2018Assignee: The MathWorks, Inc.Inventors: Halldor Narfi Stefansson, Elwin Yam Ming Chan, Portia O'Callaghan, Loren P. Dean
-
Patent number: 9864588Abstract: Exemplary embodiments provide techniques for replacing a portion of a state diagram with a generalized, canonical version of the portion. The canonicalized version mimics the structure or semantics (or both) of the portion of the state diagram, although the canonicalized version need not be a perfect match for the structure or semantics of the portion. Exemplary embodiments further provide techniques for identifying a portion of a state diagram for reuse, and generating a canonicalized version of the portion.Type: GrantFiled: December 9, 2010Date of Patent: January 9, 2018Assignee: The MathWorks, Inc.Inventors: Srinath Avadhanula, Vijay Raghavan
-
Patent number: 9846571Abstract: A device generates a model associated with a multi-rate system. The multi-rate system includes a system associated with a clock rate and a sample rate, and the clock rate is greater than the sample rate. The device identifies the clock rate of the multi-rate system based on the model, and identifies a portion, of the model, associated with the sample rate. The device applies clock rate pipelining to adjust the sample rate associated with the portion of the model so that the sample rate substantially equals the clock rate, and generates code associated with the model and the applied clock rate pipelining.Type: GrantFiled: January 14, 2015Date of Patent: December 19, 2017Assignee: The MathWorks, Inc.Inventors: Girish Venkataramani, Yongfeng Gu, Wang Chen
-
Patent number: 9846575Abstract: A device may receive installation software for installing a technical computing environment to be executed by a hardware platform, and may receive platform information associated with the hardware platform. The device may generate code for the technical computing environment based on the installation software and the platform information, and may generate, based on the code, one or more binary files or bitstream files for installing the technical computing environment on the hardware platform. The device may utilize the one or more binary files or bitstream files to install the technical computing environment on the hardware platform and for execution by the hardware platform. The technical computing environment may be customized for the hardware platform.Type: GrantFiled: September 11, 2015Date of Patent: December 19, 2017Assignee: The MathWorks, Inc.Inventors: Justyna Zander, Pieter J. Mosterman
-
Patent number: 9817931Abstract: Systems and methods automatically generate optimized hardware description language (HDL) code for an executable model. An intermediate representation is generated for the executable model, which includes model elements. The intermediate representation includes nodes corresponding to the model elements. The HDL code is generated from the intermediate representation. A synthesis tool chain performs hardware synthesis using the HDL code. The synthesis tool chain generates performance characteristics of hardware components defined by the synthesis tool chain. The performance characteristics are mapped to the nodes of the intermediate representation, and one or more performance bottlenecks are identified. At least one optimization technique is applied to the intermediate representation to produce a revised intermediate representation, which is then used to generate new HDL code. The process may be repeated until the performance bottlenecks are eliminated or a termination criterion is met.Type: GrantFiled: December 5, 2014Date of Patent: November 14, 2017Assignee: The MathWorks, Inc.Inventors: Yongfeng Gu, Girish Venkataramani, Rama Kokku
-
Patent number: 9811640Abstract: A modeling and simulation environment enables a user to create a model of a stiff chemical or biological system. The stiff chemical or biological system refers to a system that includes at least two or more different time scales of the chemical or biochemical reactions. The modeling and simulation environment also enables the user to solve the stiff chemical or biological system using a leaping algorithm. The leaping algorithm may leap over simulation of the reactions occurring in the time interval to accelerate the simulation of the chemical or biological system. The algorithm maximizes the size of the time interval by adjusting the size of the time interval using a bracketing algorithm.Type: GrantFiled: March 13, 2006Date of Patent: November 7, 2017Assignee: The MathWorks, Inc.Inventor: Shrikant Vitthal Savant
-
Patent number: 9779195Abstract: A system and method tests for functional equivalence prior to automatically retiming a high-level specification. An Intermediate Representation (IR) includes one or more graphs or trees based on the high-level specification. A functional equivalence (FE) analyzer determines whether one or more components in the graph meet certain value and state conditions and thus is a candidate for retiming. A scheduler can use components that fail FE as a retiming boundary.Type: GrantFiled: March 6, 2015Date of Patent: October 3, 2017Assignee: The MathWorks, Inc.Inventors: Yongfeng Gu, Girish Venkataramani
-
Patent number: 9774699Abstract: A mechanism for converting a graphical model of a system into an intermediate representation (IR) of a model is discussed. The mechanism alters the IR, and uses the altered IR to create a new or updated graphical model of the system that may be viewed and simulated by a user. Once the user is satisfied with the alterations to the IR, the IR or the graphical model may be used to generate code in a target language to enable the building of the physical system being designed. The use of the altered IR to generate a new or updated graphical model allows a more efficient and customizable design and simulation process than is typically found by simulating code that has been converted to target languages. The generation of the graphical model based on the altered IR allows a user to visually inspect the changes to the system, and the simulation of the graphical model based on the altered IR allows corrective action to be taken to account for any changes that occurred during the transformation of the model.Type: GrantFiled: September 20, 2005Date of Patent: September 26, 2017Assignee: The MathWorks, Inc.Inventors: Brian K. Ogilvie, Charles J. Devane, Kiran Kumar Kintali, Donald Paul Orofino, II
-
Patent number: 9761026Abstract: A device may receive information that specifies a graphical scene. The graphical scene may include a coordinate axis. Data, to be plotted in the graphical scene, may be plotted with regard to the coordinate axis. The device may generate a structured plurality of objects. One or more objects, of the structured plurality of objects, may store properties that define the graphical scene. A particular object, of the one or more objects, may store properties that define one or more elements of the coordinate axis. The device may receive information identifying a modification to an element of the coordinate axis, of the one or more elements of the coordinate axis. The device may modify a property of the properties that define the one or more elements of the coordinate axis, based on the instruction, to implement the modification specified by the instruction.Type: GrantFiled: January 22, 2016Date of Patent: September 12, 2017Assignee: The MathWorks, Inc.Inventors: James D. Barabas, Eric M. Ludlam, Michael P. Garrity, Benjamin V. Hinkle
-
Patent number: 9753615Abstract: A device may receive information identifying a model including information associated with elements included in the model. The device may cause the model to be executed, and may collect data associated with executing the model. The device may determine performance information based on the collected data. The performance information may be associated with the elements included in the model. The device may generate a heat map based on the performance information. The heat map may associate an element, of the elements, with a visual representation indicating performance information, associated with the element, based on a heat map scale. The heat map scale may relate the performance information, associated with the element, to performance information associated with another element. The heat map may be a graphical interface that includes a graphical representation of the element and a graphical representation of the other element. The device may provide the heat map.Type: GrantFiled: February 20, 2014Date of Patent: September 5, 2017Assignee: The MathWorks, Inc.Inventors: Fu Zhang, Robert O. Aberg, Joan Wortman, Murali K. Yeddanapudi