Searcharxiv⌕ Search

arXiv subjects

Yu Pei

Publications and source records attributed to Yu Pei.

27 records · Page 2Linked to original sources

Thermal Conductivity Modeling of Monodispersed Microspheres using Discrete Element Method

Particle beds are widely used in various systems and processes, such as particle heat exchangers, granular flow reactors, and additive manufacturing. Accurate modeling of thermal conductivity of particle beds and understanding of their heat transfer mechanisms are important. However, previous models were based on a simple cubic packing of particles which could not accurately represent the actual heat transfer processes under certain conditions. Here, we examine the effect of the packing structure on thermal conductivity of particle beds. We use monodispersed silica microspheres with average article sizes ranging from 23 to 330 um as a model material. We employ a transient hot-wire technique to measure the thermal conductivity of the particle beds with packing density of 43 to 57% within a temperature range of room temperature to 500 deg. C and under N2 gaseous pressures of 20 to 760 Torr. We then use a discrete element method (DEM) to obtain the realistic packing structure of the particles, which is then fed into a finite-element model (FEM) to calculate the thermal conductivity, with the consideration of solid conduction, gas conduction, and radiation heat transfer. Our results show that the thermal conductivity model based on the more realistic random packing structure derived from the DEM shows better agreement with the experimental data compared to that based on the simple cubic packing structure. The combined DEM and FEM methodology can serve as a useful tool to predict effective thermal conductivity of particle beds and to quantify different heat transfer mechanisms under various conditions.

cond-mat.mtrl-sci↗

Measurement of High-temperature Thermophysical Properties of Bulk and Coatings Using Modulated Photothermal Radiometry

This paper presents the development of instrumentation for the measurement of high-temperature thermal conductivity of bulk and coatings using a modulated photothermal radiometry (MPR) method, where a sample is heated by an intensity-modulated laser to probe into different layers of the sample. While MPR has been previously established, most of the previous studies only focus on the measurement at room temperature. The MPR has not been well studied for measurements of bulk and coating materials at high temperatures, which are increasingly important for a multitude of applications, such as materials used in the concentrating solar power (CSP) plants and the nuclear reactors. MPR is a non-contact technique that utilizes the intrinsic thermal emission from the specimens for thermometry, which is favorable for measurements at high temperatures in harsh environment. The authors designed and utilized a sample holder suitable for high temperature measurement up to 973 K with good temperature uniformity within the sample. The high-temperature MPR setup was validated by measuring bulk materials with known thermal conductivity. The setup and technique were then extended to the measurement of black solar-absorbing coatings of 10 to 50 μm thick on various substrates by modulating the frequency of the laser heating beam and the thermal penetration depth. The studies showed that thermal conductivities of typical solar-absorbing coatings are 0.4 ~ 0.8 W m-1 K-1, indicating a possibly large temperature drop within the coating under high solar irradiation flux, such as over 1000-sun for central solar towers in CSP plants.

cond-mat.mtrl-sci↗

RESTORE: Retrospective Fault Localization Enhancing Automated Program Repair

Fault localization is a crucial step of automated program repair, because accurately identifying program locations that are most closely implicated with a fault greatly affects the effectiveness of the patching process. An ideal fault localization technique would provide precise information while requiring moderate computational resources---to best support an efficient search for correct fixes. In contrast, most automated program repair tools use standard fault localization techniques---which are not tightly integrated with the overall program repair process, and hence deliver only subpar efficiency. In this paper, we present retrospective fault localization: a novel fault localization technique geared to the requirements of automated program repair. A key idea of retrospective fault localization is to reuse the outcome of failed patch validation to support mutation-based dynamic analysis---providing accurate fault localization information without incurring onerous computational costs. We implemented retrospective fault localization in a tool called RESTORE---based on the JAID Java program repair system. Experiments involving faults from the Defects4J standard benchmark indicate that retrospective fault localization can boost automated program repair: RESTORE efficiently explores a large fix space, delivering state-of-the-art effectiveness (41 Defects4J bugs correctly fixed, 8 more than any other automated repair tools for Java) while simultaneously boosting performance (speedup over 3 compared to JAID). Retrospective fault localization is applicable to any automated program repair techniques that rely on fault localization and dynamic validation of patches.

cs.SE↗

A Bug or a Suggestion? An Automatic Way to Label Issues

More and more users and developers are using Issue Tracking Systems (ITSs) to report issues, including bugs, feature requests, enhancement suggestions, etc. Different information, however, is gathered from users when issues are reported on different ITSs, which presents considerable challenges for issue classification tools to work effectively across the ITSs. Besides, bugs often take higher priority when it comes to classifying the issues, while existing approaches to issue classification seldom focus on distinguishing bugs and the other non-bug issues, leading to suboptimal accuracy in bug identification. In this paper, we propose a deep learning-based approach to automatically identify bug-reporting issues across various ITSs. The approach implements the k-NN algorithm to detect and correct misclassifications in data extracted from the ITSs, and trains an attention-based bi-directional long short-term memory (ABLSTM) network using a dataset of over 1.2 million labelled issues to identify bug reports. Experimental evaluation shows that our approach achieved an F-measure of 85.6\% in distinguishing bugs and other issues, significantly outperforming the other benchmark and state-of-the-art approaches examined in the experiment.

cs.SE↗

Analytic integrability of two lopsided systems

In this paper, we present two classes of lopsided systems and discuss their analytic integrability. The analytic integrable conditions are obtained by using the method of inverse integrating factor and theory of rotated vector field. For the first class of systems, we show that there are n + 4 small-amplitude limit cycles enclosing the origin of the systems for n ? 2, and 10 limit cyclesfor n = 1. For the second class of systems, we prove that there exist n+4 small-amplitude limit cycles around the origin of the systems for n ? 2, and 9 limit cycles for n = 1.

math.DS↗

Automated Fixing of Programs with Contracts

This paper describes AutoFix, an automatic debugging technique that can fix faults in general-purpose software. To provide high-quality fix suggestions and to enable automation of the whole debugging process, AutoFix relies on the presence of simple specification elements in the form of contracts (such as pre- and postconditions). Using contracts enhances the precision of dynamic analysis techniques for fault detection and localization, and for validating fixes. The only required user input to the AutoFix supporting tool is then a faulty program annotated with contracts; the tool produces a collection of validated fixes for the fault ranked according to an estimate of their suitability. In an extensive experimental evaluation, we applied AutoFix to over 200 faults in four code bases of different maturity and quality (of implementation and of contracts). AutoFix successfully fixed 42% of the faults, producing, in the majority of cases, corrections of quality comparable to those competent programmers would write; the used computational resources were modest, with an average time per fix below 20 minutes on commodity hardware. These figures compare favorably to the state of the art in automated program fixing, and demonstrate that the AutoFix approach is successfully applicable to reduce the debugging burden in real-world scenarios.

cs.SE↗

What Good Are Strong Specifications?

Experience with lightweight formal methods suggests that programmers are willing to write specification if it brings tangible benefits to their usual development activities. This paper considers stronger specifications and studies whether they can be deployed as an incremental practice that brings additional benefits without being unacceptably expensive. We introduce a methodology that extends Design by Contract to write strong specifications of functional properties in the form of preconditions, postconditions, and invariants. The methodology aims at being palatable to developers who are not fluent in formal techniques but are comfortable with writing simple specifications. We evaluate the cost and the benefits of using strong specifications by applying the methodology to testing data structure implementations written in Eiffel and C#. In our extensive experiments, testing against strong specifications detects twice as many bugs as standard contracts, with a reasonable overhead in terms of annotation burden and run-time performance while testing. In the wide spectrum of formal techniques for software quality, testing against strong specifications lies in a "sweet spot" with a favorable benefit to effort ratio.

cs.SE↗

Code-based Automated Program Fixing

Many programmers, when they encounter an error, would like to have the benefit of automatic fix suggestions---as long as they are, most of the time, adequate. Initial research in this direction has generally limited itself to specific areas, such as data structure classes with carefully designed interfaces, and relied on simple approaches. To provide high-quality fix suggestions in a broad area of applicability, the present work relies on the presence of contracts in the code, and on the availability of dynamic analysis to gather evidence on the values taken by expressions derived from the program text. The ideas have been built into the AutoFix-E2 automatic fix generator. Applications of AutoFix-E2 to general-purpose software, such as a library to manipulate documents, show that the approach provides an improvement over previous techniques, in particular purely model-based approaches.

cs.SE↗

Stateful Testing: Finding More Errors in Code and Contracts

Automated random testing has shown to be an effective approach to finding faults but still faces a major unsolved issue: how to generate test inputs diverse enough to find many faults and find them quickly. Stateful testing, the automated testing technique introduced in this article, generates new test cases that improve an existing test suite. The generated test cases are designed to violate the dynamically inferred contracts (invariants) characterizing the existing test suite. As a consequence, they are in a good position to detect new errors, and also to improve the accuracy of the inferred contracts by discovering those that are unsound. Experiments on 13 data structure classes totalling over 28,000 lines of code demonstrate the effectiveness of stateful testing in improving over the results of long sessions of random testing: stateful testing found 68.4% new errors and improved the accuracy of automatically inferred contracts to over 99%, with just a 7% time overhead.

cs.SE↗