-
Notifications
You must be signed in to change notification settings - Fork 0
/
planner.js
500 lines (494 loc) · 19.8 KB
/
planner.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
const syllabus = {
"AM": {
"1": {
"PARTIAL DIFFERENTIATION": {
"Chain rule": false,
"Differentiation of Implicit functions": false,
"Exact differentials": false,
"Maxima, Minima and saddle points": false,
"Method of Lagrange multipliers": false,
"Differentiation under Integral sign": false,
"Jacobians and transformations of coordinates": false
}
},
"2": {
"Ordinary Differential Equations (ODE'S)": {
"Basic Concepts": false,
"Geometric Meaning of y'= ƒ(x, y)": false,
"Direction Fields": false,
"Euler's Method": false,
"Separable ODEs": false,
"Exact ODEs": false,
"Integrating Factors": false,
"Linear ODEs": false,
"Bernoulli Equation": false,
"Population Dynamics": false,
"Orthogonal Trajectories": false,
"Homogeneous Linear ODEs with Constant Coefficients": false,
"Differential Operators": false,
"Modeling of Free Oscillations of a Mass-Spring System": false,
"Euler-Cauchy Equations": false,
"Wronskian": false,
"Nonhomogeneous ODEs": false,
"Solution by Variation of Parameters": false,
"Power Series Method for solution of ODEs": false,
"Legendre Equation": false,
"Legendre Polynomials": false,
"Bessels Equation": false,
"Bessels's functions Jn(x) and Yn(x)": false,
"Gamma Function": false
}
},
"3": {
"Linear Algebra": {
"Matrices and Determinants": false,
"Gauss Elimination": false,
"Linear Independence": false,
"Rank of a Matrix": false,
"Vector Space": false,
"Solutions of Linear Systems": false,
"Concept of Existence": false,
"Uniqueness": false,
"Determinants": false,
"Cramer Rule": false,
"Gauss-Jordan Elimination": false,
"The Matrix Eigenvalue Problem": false,
"Determining Eigenvalues and Eigenvectors": false,
"Symmetric. Skew-Symmetric, Orthogonal Matrices": false,
"Eigenbases": false,
"Diagonalization": false,
"Quadratic Forms": false,
"Cayley-Hamilton Theorem": false
}
},
"4": {
"Vector Calculus": {
"Vector and Scalar Functions and Their Fields": false,
"Derivatives": false,
"Curves": false,
"Arc Length": false,
"Curvature": false,
"Torsion": false,
"Gradient of a Scalar Field": false,
"Directional Derivative": false,
"Divergence of a Vector Field": false,
"Curl of a Vector Field": false,
"Line Integrals": false,
"Path Independence of Line Integrals": false,
"Double Integrals": false,
"Green Theorem in the Plane": false,
"Surfaces for Surface Integrals": false,
"Surface Integrals": false,
"Triple Integrals": false,
"Stokes Theorem": false,
"Divergence Theorem of Gauss": false
}
}
},
"AP": {
"1": {
"THERMODYNAMICS": {
"Fundamental Ideas of Thermodynamics": false,
"The Continuum Model": false,
"System, State, Equilibrium, Process": false,
"Equations of state": false,
"Heat & Work": false,
"Laws of Thermodynamics": false,
"Carnot Engine": false,
"entropy": false
}
},
"2": {
"Waves and Oscillations": {
"Wave motion": false,
"simple harmonic motion": false,
"wave equation": false,
"superposition principle": false
},
"Introduction to Electromagnetic Theory": {
"Maxwell equations": false,
"Work done by the electromagnetic field": false,
"Poynting theorem": false,
"Momentum": false,
"Angular momentum in electromagnetic fields": false,
"Electromagnetic waves": false,
"the wave equation": false,
"plane electromagnetic waves": false,
"energy carried by electromagnetic waves": false
}
},
"3": {
"Interference by division of wave front": {
"Youngs double slit experiment": false,
"Fresnel biprism": false
},
"interference by division of amplitude": {
"Thin films": false,
"Newton's rings": false,
"Michelson interferometer": false
},
"Coherence": {
"Theory": false,
"coherent sources": false
}
},
"4": {
"Theory of relativity": {
"Michelson-Morley Experiment": false,
"speed of light": false,
"Absolute and Inertial frames of reference": false,
"Galilean transformations": false,
"postulates of the special theory of relativity": false,
"Lorentz transformations": false,
"time dilation": false,
"length contraction": false,
"velocity addition": false,
"mass energy equivalence": false,
"Invariance of Maxwell equations under Lorentz Transformation": false
},
"Introduction to Laser Physics": {
"Introduction": false,
"coherence": false,
"Einstein A and B coefficients": false,
"population inversion": false,
"basic principle and operation of a laser": false,
"He-Ne laser": false,
"Ruby laser": false
}
}
},
"ES": {
"1": {
"DC Circuits": {
"Passive circuit components": false,
"Basic laws of Electrical Engineering": false,
"Temperature Resistance Coefficients": false,
"voltage & current sources": false,
"Series and parallel circuits": false,
"power and energy": false,
"Kirchhoff Laws": false,
"Nodal & Mesh Analysis": false,
"delta-star transformation": false,
"superposition theorem": false,
"Thevenin theorem": false,
"Norton theorem": false,
"maximum power transfer theorem": false,
"Time domain analysis of first Order RC & LC circuits": false
}
}
,
"2": {
"AC Circuits": {
"Representation of sin waveforms": false,
"peak and rms values": false,
"phasor representation": false,
"real power": false,
"reactive power": false,
"apparent power": false,
"power factor": false,
"Single-phase ac circuits of RLC combinations(series & ||)": false,
"resonance": false,
"3 phase balanced circuits": false,
"voltage and current relations in star and delta connections": false
}
},
"3": {
"D.C. Generators & Motors": {
"Principle of operation of Generators & Motors": false,
"Speed Control of shunt motors": false,
"Flux control": false,
"Rheostatic control": false,
"voltage control": false,
"Speed control of series motors": false
},
"A.C. Generators & Motors": {
"Principle of operation": false,
"Revolving Magnetic field": false,
"Squirrel cage and phase wound rotor": false,
"Starting of Induction motors": false,
"Direct on line and Star Delta starters": false,
"Synchronous machines": false
}
},
"4": {
"Transformers": {
"Construction and principle of operation": false,
"equivalent circuit": false,
"losses in transformers": false,
"regulation and efficiency": false,
"Auto-transformer": false,
"3-phase transformer connections": false
},
"Measuring Instruments": {
"Electromagnetism": false,
"Different Torques in Indicating instruments": false,
"Moving Iron Instruments Construction and Principle": false,
"Attraction-Repulsion type": false,
"Moving Coil instruments Permanent Magnet type": false,
"Dynamometer type Instruments": false
}
}
},
"MP": {
"1": {
"Manufacturing": {
"definition": false,
"importance": false,
"classification": false,
"properties of materials": false
},
"Casting": {
"Sand casting": false,
"Sand moulds": false,
"Type of patterns": false,
"Pattern materials": false,
"Pattern allowances": false,
"Types of Moulding sand & Properties": false,
"Core making": false,
"Elements of gating system": false,
"Casting defects": false,
"Description & Operation of cupola": false
},
"Special casting processes": {
"Shell casting": false,
"Pressure die casting": false,
"Centrifugal casting": false
}
},
"2": {
"Welding": {
"principles": false,
"classification": false,
"Fusion welding": false,
"Gas welding": false,
"Equipments used": false,
"Filler and Flux materials": false,
"Electric arc welding": false,
"Gas metal arc welding": false,
"Submerged arc welding": false,
"Electro slag welding": false,
"TIG and MIG welding process": false,
"resistance welding": false,
"welding defects": false
}
},
"3": {
"Deformation Processes": {
"Hot working and cold working of metals": false,
"Forging processes": false,
"Open and closed die forging process": false,
"Typical forging operations": false,
"Rolling of metals": false,
"Principle of rod and wire drawing": false,
"Tube drawing": false,
"Principle & Types of Extrusion": false},
"Sheet metal characteristics": {
"Typical shearing operations": false,
"bending and drawing operations": false,
"Stretch forming operations": false,
"Metal spinning": false
}
},
"4": {
"Powder Metallurgy": {
"Introduction of powder metallurgy process": false,
"powder production": false,
"blending": false,
"compaction": false,
"sintering": false
},
"Manufacturing of Plastic Components": {
"Types of plastics": false,
"Characteristics of forming & shaping": false
},
"Moulding of Thermoplastics": {
"Injection": false,
"blow": false,
"rotational": false,
"film blowing": false,
"extrusion": false,
"thermoforming": false
},
"Thermosets":{
"Moulding -- Compression, Transfer": false,
"Bonding of Thermoplastics": false
}
}
},
"AC": {
"1": {
"FUELS": {
"Classification and Characteristics of fuels": false,
"Calorific values": false,
"Comparison b/w solid, liquid, gas fuels": false,
"Bomb calorimeter": false,
"Boys calorimeter": false,
"Dulong Formula": false
},
"COAL": {
"Proximate Analysis of coal": false,
"Ultimate Analysis of coal and numericals": false,
"Otto-Hoffman oven": false,
"metallurgical coke": false
},
"PETROLEUM": {
"Petroleum refining": false,
"cracking-thermal and catalytic": false,
"knocking characteristics": false,
"Octane and Cetane rating": false
},
"GAS FUELS": {
"Natural Gas": false,
"CNG": false,
"LPG": false,
"Coal gas": false,
"Oil gas": false,
"Producer gas": false,
"Water gas": false,
"Combustion Numericals": false
}
},
"2": {
"PHASE RULE": {
"Definition, Terms Used": false,
"Water System": false,
"Sulphur System": false,
"Lead-Silver System": false,
"Zinc-Magnesium System": false
},
"POLYMERS": {
"Classification": false,
"functionality": false,
"types": false
},
"PLASTICS": {
"Polyethylene Plastics (Addition polymers)": false,
"low-density polyethene(LDPE)": false,
"high-density polyethylene(HDPE)": false,
"linear low density polyethylene(LLDPE)": false,
"ultra-high molecular weight(UHMWPE)": false,
"Condensation Polymers -- Nylons, Bakelite, Glyptal": false
},
"SPECIALITY POLYMERS": {
"Engineering thermoplastics": false,
"Conducting polymers": false,
"Electroluminescent polymers": false,
"liquid crystalline polymers": false,
"biodegradable polymers": false
}
},
"3": {
"WATER": {
"Introduction": false,
"water quality standards": false,
"physical, chemical, biological characteristics": false,
"hardness of water": false,
"disadvantages of hardness": false,
"determination of hardness": false,
"EDTA method": false,
"Alkalinity and its determination": false
},
"BOILER PROBLEMS": {
"Scale and sludge formation": false,
"boiler corrosion": false,
"caustic embrittlement": false,
"priming": false,
"foaming": false,
"boiler water treatment internal or in-situ": false,
"carbonate and phosphate conditioning": false,
"colloidal and Calgon conditioning": false,
"External Treatment -- Lime Soda, Zeolite, Ion-exchange": false
},
"MUNICIPAL WATER SUPPLY TREATMENT & DISINFECTION": {
"break-point chlorination": false,
"Desalination": false,
"Reverse Osmosis": false,
"Electrodialysis": false,
"defluoridation of water": false
}
},
"4": {
"CORROSION": {
"Definition & effects": false,
"dry/chemical mechanism": false,
"wet/electrochemical corrosion mechanism": false,
"Pilling-Bedworth ratio": false,
"Types -- Galvanic, Soil, Pitting, Stress, Differential Aeration": false,
"Mechanism of rusting of iron": false,
"Passivity": false,
"Factors influencing corrosion": false,
"galvanization": false,
"tinning": false,
"cathodic protection": false,
"sacrificial anodic protection": false,
"electroplating": false,
"prevention through material selection and design": false
},
"GREEN CHEMISTRY": {
"Twelve Principles of Green Chemistry": false,
"Zero Waste Technology": false,
"Atom economy": false,
"Use of alternative feedstock": false,
"innocuous reagents": false,
"alternative solvents": false,
"designing alternative reaction methodology": false,
"minimising energy consumption": false,
},
"NANOMATERIALS": {
"Properties": false,
"synthesis": false,
"BET and TEM": false,
"applications": false
}
}
}
}
async function createList() {
const data = await readData();
const subjects = Object.keys(data);
for (const subject in subjects) {
const sub = document.createElement('button');
sub.className = 'subject';
sub.textContent = subjects[subject];
const parent_div = document.getElementById('syllabus');
parent_div.appendChild(sub);
// const units = data[subjects[subject]];
// for (let unit = 1; unit < 5; unit++) {
// console.log(document.getElementsByClassName('syllabus'));
// }
//
// for(const unit in data[subject]){
// let topic = Object.keys(data[subject][unit]);
// console.log(subject, unit, topic);
// }
//
}
}
// TODO : Subject --> Collapsible
// Unit : Rounded Box
// Topic : Heading (h2)
// Subtopic : Normal Size
function createList2(data, level) {
if (level > 4) return;
let html = "";
for(key in data){
if (typeof data[key] === "object" && data[key] !== null) {
if (level === 1) html += "<button class='subject'>" + key + "</button>\n";
else if(level == 3) {
html += "<br><div class='topic'>" + key.toUpperCase() + "</div>";
}
html += createList2(data[key], level+1);
}
else{
const words = key.split(" ").map(word => word[0].toUpperCase() + word.slice(1));
const updated_key = words.join(" ");
html += "<p id='" + updated_key + "'>" + updated_key +"</p>"
}
}
if (level == 3) {
html += "";
}
return html;
}
const html = createList2(syllabus, 1);
document.getElementById('syllabus').innerHTML = "<h1>Syllabus</h1>" + html;