The CH programming language is designed to be a superset of C. CH bridges the gap between C and FORTRAN; it encompasses all the programming capabilities of FORTRAN 77 and consists of features of many other programming languages and software packages. Unlike other general-purpose programming languages, CH is designed to be especially suitable for applications in mechanical systems engineering. Because of our research interests, many programming features in CH have been implemented for design automation, although they are useful in other applications as well. In this paper we will describe these new programming features for design automation, as they are currently implemented in CH in comparison with C and FORTRAN 77.
1.
ANSI, 1978, ANSI Standard X3.9-1978, Programming Language FORTRAN, (revision of ANSI X2.9-1966), American National Standards Institute, Inc., NY.
2.
Cheng
H. H.
1993
a, “Scientific Computing in the CH Programming Language
,” Scientific Programming
, Vol. 2
, No. 3
, pp. 49
–75
.3.
Cheng
H. H.
1993
b, “Handling of Complex Numbers in the CH Programming Language
,” Scientific Programming
, Vol. 2
, No. 3
, pp. 79
–106
.4.
Cheng, H. H., 1993c, “Adding References and Nested Functions to C for Modular and Parallel Scientific Programming,” NCEG, X3J11.1/93-044, October 22.
5.
Cheng
H. H.
1994
a, “Pedagogically Effective Programming Environment for Teaching Mechanism Design
,” Computer Applications in Engineering Education
, Vol. 2
, No. 1
, pp. 23
–39
.6.
Cheng
H. H.
1994
b, “Programming with Dual Numbers and its Applications in Mechanism Design
,” Engineering with Computers
, Vol. 10
, No. 4
, pp. 212
–229
.7.
Cheng, H. H., and Thompson, 1995, “Computer-Aided Displacement Analysis of Spatial Mechanisms Using the CH Programming Language,” Advances in Engineering Software, (accepted).
8.
Clifford
W. K.
1873
, “Preliminary Sketch of Bi-quaternions
,” Proceedings of London Mathematical Society
, Vol. 4
, pp. 381
–395
.9.
Dooley, J. R., and McCarthy, J. M., 1991, “Spatial Rigid Body Dynamics Using Dual Quaternion Components,” Proceedings of IEEE International Conf. on Robotics and Automation, Vol. 1, Sacramento, CA, April, pp. 90–95.
10.
Martinez
J.
Duffy
J.
1993
, “The Principle of Transference—History, Statement and Proof
,” Mechanism and Machine Theory
, Vol. 28
, No. 1
, Jan., pp. 165
–177
.11.
Erdman, A. G., and Sandor, G. N., 1991, “Mechanism Design, Analysis and Synthesis,” Vol. 1, 2nd edition, Prentice Hall.
12.
Gupta, K. C., 1989, “Spatial Kinematics,” lecture notes, Department of Mechanical Engineering, University of Illinois at Chicago, June.
13.
Hsia
L. M.
Yang
A. T.
1981
, “On the Principle of Transference in Three-Dimensional Kinematics
,” ASME JOURNAL OF MECHANICAL DESIGN
, Vol. 103
, No. 3
, July, pp. 652
–656
.14.
IEEE, 1985, ANSI/IEEE Standard 754-1985, IEEE Standard for Binary Floating-Point Arithmetic, Institute of Electrical and Electronic Engineers, Inc., Piscataway, NJ.
15.
ISO/IEC, Information Technology, Programming Languages—FORTRAN, 1539:1991E, ISO, Geneva, Switzerland.
16.
ISO/IEC, Programming Languages—C, 9899:1990E, ISO, Geneva, Switzerland.
17.
Kernighan, B. W., and Ritchie, D. M., 1988, The C Programming Language, Prentice-Hall, Inc., Englewood Cliffs, NJ, 2nd edition; 1st edition, 1978.
18.
Neville, D., and Joskowicz, L., 1993, “A Representation Language for Mechanical Behavior,” Proc. of the 5th International Conf. on Design Theory and Methodology, Albuquerque, NM, September 19–22, pp. 1–6.
19.
Pennock
G. R.
Yang
A. T.
1985
, “Application of Dual-Number Matrices to the Inverse Kinematics Problem of Robot Manipulators
,” ASME JOURNAL OF MECHANISMS, TRANSMISSIONS, AND AUTOMATION IN DESIGN
, Vol. 107
, June 1985, pp. 201
–208
.20.
Ravani
B.
Roth
B.
1984
, “Mappings of Spatial Kinematics
,” ASME JOURNAL OF MECHANISMS, TRANSMISSIONS, AND AUTOMATION IN DESIGN
, Vol. 106
, Sept., pp. 341
–347
.21.
Ritchie
D. M.
Johnson
S. C.
Lesk
M. E.
Kernighan
B. W.
1978
, “The C Programming Language
,” The Bell System Technical Journal
, Vol. 57
, No. 6
, July-August, pp. 1991
–2020
.22.
Shah, J. J., Bliznakov, P. I., and Urban, S. D., 1993, “Development of a Machine Understandable Language for Design Process Representation,” Proc. of the 5th International Conf. on Design Theory and Methodology, Albuquerque, NM, September 19–22, pp. 15–24.
23.
Stroustrup, B., 1987, The C++ Programming Language, Reading, MA, Addison-Wesley.
24.
Yang
A. T.
Freudenstein
F.
1964
, “Application of Dual-Number Quaternion Algebra to the Analysis of Spatial Mechanisms
,” ASME Journal of Applied Mechanics
, Vol. 86
, No. 2
, June, pp. 300
–308
.
This content is only available via PDF.
Copyright © 1995
by The American Society of Mechanical Engineers
You do not currently have access to this content.