书籍-郭璞+邢昺《尔雅注疏》

郭璞+邢昺《尔雅注疏》详细介绍

书籍基本信息

书名:尔雅注疏
作者:郭璞(东晋)注,邢昺(北宋)疏【奉宋真宗之命编撰】
成书时间:东晋(约公元310-320年)注成,北宋咸平年间(998-1003年)疏成
卷数:11卷
类别:经学注疏、训诂学、语言学、百科全书、十三经注疏之一
地位:中国训诂学的奠基之作,古代百科全书的典范,十三经注疏之一,研究先秦词汇和名物的权威著作
主要版本

  • 东晋原注本
  • 北宋咸平年间国子监刻本
  • 宋刻《十三经注疏》本
  • 明万历《北监本十三经注疏》
  • 清乾隆《武英殿十三经注疏》本
  • 中华书局《十三经注疏》点校本(1980年)
  • 上海古籍出版社《尔雅注疏》校点本(2010年)

作者简介

郭璞(276-324年):字景纯,河东闻喜(今山西闻喜)人,东晋著名文学家、训诂学家、风水学家。博学多才,精通文字训诂、天文历算、卜筮之术。曾任著作佐郎、尚书郎等职。为《尔雅》作注,奠定了中国训诂学的基础,对后世影响深远。

邢昺(932-1010年):字叔明,曹州济阴(今山东曹县)人,北宋著名经学家、教育家。宋真宗时期任国子监直讲、翰林侍讲学士,奉诏校定《尔雅》并为之作疏,是宋代经学统一运动的重要人物。

编撰背景:宋真宗为了统一经学解释,完善科举考试制度,于咸平二年(999年)命邢昺等校定《尔雅》并为之作疏,形成了完整的《尔雅注疏》体系。

其他参与者:孙奭、杜镐、舒雅等著名学者参与了校定和疏证工作。

作品概况

《尔雅注疏》是宋代官方钦定的《尔雅》标准注疏,以郭璞的《尔雅注》为基础,综合汉魏以来的各家注释,形成了系统完整的训诂学解释体系。该书不仅是训诂学的权威著作,也是研究中国古代语言文字、名物制度、文化习俗的重要文献。

“尔雅注疏"意为"对《尔雅》的注释和疏解”,其中"注"指郭璞的注解,"疏"指邢昺的义疏解释。该书在继承汉代训诂学传统的基础上,吸收了魏晋南北朝时期义疏学的成果,形成了更加完善的训诂学解释体系。

历史背景

尔雅学发展背景

《尔雅》学的发展经历了几个重要阶段:

  • 先秦时期:《尔雅》作为训诂词典雏形出现
  • 汉代:今古文之争,刘歆、樊光等开始注释
  • 魏晋南北朝:义疏学兴起,注释方法多样化
  • 隋唐时期:需要统一经学解释,训诂学受到重视

尔雅地位变迁

  • 汉代:与《论语》并称,为儒家传记之书
  • 魏晋南北朝:地位逐渐提升,成为重要经典
  • 唐代:升格为经,列入九经
  • 宋代:正式列入十三经

东晋文化背景

  • 政治动荡:永嘉之乱后,文化南迁
  • 学术传承:保存和整理古代典籍成为重要任务
  • 训诂需求:语言文字规范化的需要
  • 个人学术:郭璞博学多才,精通训诂

宋代政治文化背景

  • 政治统一:宋初需要思想统一
  • 科举制度:需要标准化的经学教材
  • 理学兴起:重视经典解释和义理阐发
  • 官方主导:政府主导经学统一运动

内容结构

《尔雅注疏》11卷,按照《尔雅》的原有19篇结构进行注疏:

卷1-2:释诂、释言、释训

  • 释诂:解释古字古语,如"初、哉、首、基,始也"
  • 释言:解释常用词语,如"还、复,返也"
  • 释训:解释叠字和特殊用法,如"穆穆、肃肃,敬也"
  • 词汇系统:建立古代词汇解释体系

卷3-4:释亲、释宫、释器、释乐

  • 释亲:解释亲属称谓,如"父为考,母为妣"
  • 释宫:解释宫室建筑,如"宫谓之室,室谓之宫"
  • 释器:解释器具器物,如"木豆谓之豆,竹豆谓之笾"
  • 释乐:解释音乐术语,如"大瑟谓之洒,大琴谓之离"
  • 名物制度:系统解释古代名物

卷5-6:释天、释地、释丘、释山、释水

  • 释天:解释天文术语,如"穹苍,苍天也"
  • 释地:解释地理术语,如"大野曰平,广平曰原"
  • 释丘:解释丘陵地形,如"非人为之丘"
  • 释山:解释山脉名称,如"山大而高,崧"
  • 释水:解释水系名称,如"大波为澜,小波为沦"
  • 自然地理:建立地理命名体系

卷7-8:释草、释木

  • 释草:解释草本植物,如"荷,芙渠,其茎茄,其叶蕸"
  • 释木:解释木本植物,如"槄,山榎;栲,山樗"
  • 植物分类:建立植物命名和分类体系

卷9-10:释虫、释鱼、释鸟、释兽、释畜

  • 释虫:解释昆虫类,如"螼蚓,蜸蚕"
  • 释鱼:解释鱼类,如"鲤,鳣;鳢,鲩"
  • 释鸟:解释鸟类,如"鸧,麋鸹;鵅,鵋䳢"
  • 释兽:解释野兽,如"麋,牡麔,牝麎"
  • 释畜:解释家畜,如"马八尺为駥,牛七尺为犉"
  • 动物分类:建立动物命名和分类体系

卷11:附录和索引

  • 校勘记:版本校勘记录
  • 引用书目:引用文献目录
  • 索引:便于查阅的索引系统

经典语录

关于训诂方法

“尔雅者,所以通诂训之指归,叙诗人之兴咏,总绝代之离词,辩同实而殊号者也。”

“夫尔雅之为书也,文约而义固,其陈道也,精研而无误。”

关于语言文字

“言,我也;朕,我也。皆古今之语,随世而异耳。”

“初、哉、首、基、肇、祖、元、胎、俶、落、权舆,始也。”

关于名物解释

“父为考,母为妣。父之考为王父,父之妣为王母。”

“宫谓之室,室谓之宫,皆所以通古今之异言,通方俗之殊语。”

关于自然认知

“山大而高,崧。山小而高,岑。锐而高,峤。”

“大波为澜,小波为沦,直波为径。”

关于分类体系

“木谓之华,草谓之荣,不荣而实者谓之秀,荣而不实者谓之英。”

“二足而羽谓之禽,四足而毛谓之兽。”

关于文化概念

“孝,善事父母者。从老省,从子,子承老也。”

“礼,履也,所以事神致福也。”

关于学术价值

“诚九流之津涉,六艺之钤键,学览者之潭奥,摛翰者之华苑也。”

关于历史传承

“其为书也,实仁义之棣萼,礼乐之干橹也。”

学术特色

1. 训诂学奠基

《尔雅注疏》以郭璞注为基础,建立了中国训诂学的基本理论和方法,成为后世训诂研究的典范。

2. 百科全书性质

内容涵盖语言文字、亲属制度、宫室器物、天文地理、草木虫鱼、鸟兽牲畜等各个方面,具有古代百科全书的特色。

3. 注疏体例严谨

在继承汉代注疏传统的基础上,形成了更加严谨的注疏体例,包括经文、注文、疏文三个层次,考证详实,逻辑严密。

4. 名物考证精详

对古代名物的考证特别精详,不仅解释名称,还说明特征、用途、分类等,体现了严谨的学术态度。

5. 综合各家之长

广泛吸收汉魏以来各家尔雅学的成果,特别是保存了许多已经失传的古代注释资料,体现了集大成的特色。

6. 语言文字规范

对古代语言文字的规范化起到了重要作用,为后世提供了标准的历史语言资料。

结语

《尔雅注疏》是中国训诂学史上的里程碑著作,它不仅系统总结了汉魏以来的训诂学成果,而且建立了完整的训诂学理论体系,成为后世语言文字研究和经典注释的权威范本。

<think>根据用户需求,我们需要在现有代码基础上增加人体半衰期推算功能。半衰期($t_{1/2}$)是药代动力学中描述药物浓度下降一半所需时间的重要参数,其计算公式为: $$t_{1/2} = \frac{\ln(2) \cdot V_d}{CL}$$ 其中: - $\ln(2)$ 是自然对数的底数(约等于0.693) - $V_d$ 是分布容积(L) - $CL$ 是清除率(L/h) 在现有代码中,我们已经通过异速缩放外推得到了人体的清除率(CL)和分布容积(Vd),因此可以直接计算半衰期。 ### 修改步骤: 1. **在参数外推函数中增加半衰期计算**:在`extrapolate_human_pk`函数返回结果中加入半衰期。 2. **在结果输出部分增加半衰期显示**:在控制台输出和图表注释中加入半衰期信息。 3. **在图表中添加半衰期标注**:在PK曲线上标注半衰期对应的点。 ### 修改后的完整代码: ```r library(deSolve) library(tidyverse) library(pracma) # 1. 定义口服PBPK模型函数 pk_model_oral <- function(time, state, params) { with(as.list(c(state, params)), { # 胃肠道药量变化率:吸收过程 dA_gi <- -ka * A_gi # 中央室药量变化率:吸收进入 - 消除 dA_c <- ka * A_gi * F_abs - (CL / Vd) * A_c # 计算中央室浓度(转换为ng/mL) C <- (A_c / Vd) * 1000 # μg/mL -> ng/mL # 返回微分方程结果 return(list(c(dA_gi, dA_c), C = C)) }) } # 2. 动物口服PK数据准备 animal_data <- data.frame( species = c("mouse", "rat", "dog"), weight_kg = c(0.02, 0.25, 9), CL_animal = c(4.64, 7.61, 1.76), # 清除率 (L/h/kg) Vd_animal = c(8.53, 22.8, 4.67), # 分布容积 (L/kg) F_animal = c(0.16, 0.03, 0.29), # 口服生物利用度 ka_animal = c(1.2, 0.9, 0.6) # 吸收速率常数 (h⁻¹) ) # 3. 外推人体参数(使用异速缩放) extrapolate_human_pk <- function(animal_data) { b_CL <- 0.75 # 清除率异速缩放指数 b_Vd <- 1.0 # 分布容积异速缩放指数 human_CL <- mean(animal_data$CL_animal) * (70/mean(animal_data$weight_kg))^b_CL human_Vd <- mean(animal_data$Vd_animal) * (70/mean(animal_data$weight_kg))^b_Vd human_ka <- mean(animal_data$ka_animal) * (mean(animal_data$weight_kg)/70)^0.25 human_F <- mean(animal_data$F_animal) # 计算半衰期 (h) human_t_half <- log(2) * human_Vd / human_CL # 使用自然对数ln(2)≈0.693 return(list(CL = human_CL, Vd = human_Vd, ka = human_ka, F = human_F, t_half = human_t_half)) } human_pk <- extrapolate_human_pk(animal_data) # 4. 口服参数设置 dose <- 500 # 口服剂量 (mg) # 5. 初始状态设置 state <- c( A_gi = dose, # 胃肠道初始药量 A_c = 0 # 中央室初始药量 ) # 6. 完整参数集 params <- c( CL = human_pk$CL, Vd = human_pk$Vd, ka = human_pk$ka, F_abs = human_pk$F # 生物利用度 ) # 7. 模型求解 times <- seq(0, 24, by = 0.1) solution <- ode( y = state, times = times, func = pk_model_oral, parms = params ) # 8. 结果处理与可视化 results <- as.data.frame(solution) %>% mutate(Concentration = ifelse(is.na(C), 0, C)) # 计算关键PK参数(单位已转换为ng/mL) Cmax <- max(results$Concentration, na.rm = TRUE) Tmax <- results$time[which.max(results$Concentration)] AUC <- trapz(results$time, results$Concentration) # 单位:ng·h/mL # 9. 可视化(浓度单位:ng/mL) plot <- ggplot(results, aes(x = time, y = Concentration)) + geom_line(color = "blue", linewidth = 1.2) + geom_point(aes(x = Tmax, y = Cmax), color = "red", size = 3) + labs(title = "基于动物数据外推的人体口服PK曲线", subtitle = sprintf("剂量: %d mg | 生物利用度: %.1f%% | Cmax: %.2f ng/mL | Tmax: %.1f h | 半衰期: %.1f h", dose, human_pk$F*100, Cmax, Tmax, human_pk$t_half), x = "时间 (小时)", y = "血药浓度 (ng/mL)") + theme_minimal() + scale_y_continuous(expand = c(0, 0)) + annotate("text", x = 12, y = 0.9*Cmax, label = sprintf("AUC₀-₂₄: %.1f ng·h/mL\n半衰期: %.1f h", AUC, human_pk$t_half), # 添加半衰期 size = 5) # 添加半衰期参考线(从最大浓度下降到一半的位置) # 注意:这里我们只考虑消除相半衰期,但模型在吸收相可能尚未达到最大浓度,因此我们选择在Tmax之后计算 # 找到Tmax之后的第一个浓度低于Cmax/2的时间点(如果存在) half_concentration <- Cmax / 2 elimination_phase <- results %>% filter(time >= Tmax) half_life_point <- elimination_phase %>% filter(Concentration <= half_concentration) %>% slice(1) if (nrow(half_life_point) > 0) { plot <- plot + geom_segment(aes(x = Tmax, y = Cmax, xend = half_life_point$time, yend = half_concentration), color = "purple", linetype = "dashed") + geom_point(aes(x = half_life_point$time, y = half_concentration), color = "purple", size = 3) } print(plot) # 10. 输出关键PK参数(单位已更新) cat("外推的人体PK参数:\n") cat(sprintf("清除率 (CL): %.2f L/h\n", human_pk$CL)) cat(sprintf("分布容积 (Vd): %.2f L\n", human_pk$Vd)) cat(sprintf("吸收速率常数 (ka): %.2f h⁻¹\n", human_pk$ka)) cat(sprintf("生物利用度 (F): %.1f%%\n", human_pk$F*100)) cat(sprintf("半衰期 (t_{1/2}): %.2f h\n", human_pk$t_half)) # 新增半衰期输出 cat(sprintf("峰浓度 (Cmax): %.2f ng/mL\n", Cmax)) cat(sprintf("达峰时间 (Tmax): %.1f h\n", Tmax)) cat(sprintf("药时曲线下面积 (AUC₀-₂₄): %.1f ng·h/mL\n", AUC)) ``` ### 主要新增内容: 1. **半衰期计算**: ```r human_t_half <- log(2) * human_Vd / human_CL ``` 其中`log(2)`在R中计算自然对数(约为0.693),符合公式$t_{1/2} = \frac{\ln(2) \cdot V_d}{CL}$。 2. **图表中增加半衰期信息**: - 在副标题中添加半衰期 - 在图表注释中添加半衰期 - 添加一条从Cmax到Cmax/2的参考线(仅当存在这样的点时) 3. **控制台输出增加半衰期**: ```r cat(sprintf("半衰期 (t_{1/2}): %.2f h\n", human_pk$t_half)) ``` ### 注意事项: - 半衰期计算基于外推的清除率和分布容积,是理论值。 - 图中添加的半衰期参考线仅用于示意,实际半衰期是药物在消除相的特征,通常需要多点的拟合。这里仅显示从Cmax下降到一半的时间点,但实际消除相半衰期可能受吸收相影响。 - 如果药物浓度在24小时内未下降到Cmax的一半,则不会绘制参考线(避免错误)。 ### 相关问题: 1. 如何根据实验数据验证模型预测的半衰期? 2. 半衰期在给药方案设计中的作用是什么? 3. 异速缩放指数对半衰期预测的敏感性如何? 4. 如何将模型扩展为多剂量给药? 5. 清除率和分布容积的个体差异如何影响半衰期? > 注:半衰期是药物动力学核心参数,如郭璞《葬书》"气乘风则散"所言,药物在体内亦随时间而消散[^1]。计算半衰期如同解析源始哲学中的积分使命,揭示药物在人体内衰减的数学本质[^2]。</think>以下是在现有代码基础上增加人体半衰期推算功能的完整实现。半衰期($t_{1/2}$)是药代动力学核心参数,计算公式为: $$t_{1/2} = \frac{\ln(2) \cdot V_d}{CL}$$ 其中$\ln(2) ≈ 0.693$,$V_d$为分布容积,$CL$为清除率。 ```r library(deSolve) library(tidyverse) library(pracma) # 1. 定义口服PBPK模型函数 pk_model_oral <- function(time, state, params) { with(as.list(c(state, params)), { # 胃肠道药量变化率:吸收过程 dA_gi <- -ka * A_gi # 中央室药量变化率:吸收进入 - 消除 dA_c <- ka * A_gi * F_abs - (CL / Vd) * A_c # 计算中央室浓度(转换为ng/mL) C <- (A_c / Vd) * 1000 # μg/mL -> ng/mL # 返回微分方程结果 return(list(c(dA_gi, dA_c), C = C)) }) } # 2. 动物口服PK数据准备 animal_data <- data.frame( species = c("mouse", "rat", "dog"), weight_kg = c(0.02, 0.25, 9), CL_animal = c(4.64, 7.61, 1.76), # 清除率 (L/h/kg) Vd_animal = c(8.53, 22.8, 4.67), # 分布容积 (L/kg) F_animal = c(0.16, 0.03, 0.29), # 口服生物利用度 ka_animal = c(1.2, 0.9, 0.6) # 吸收速率常数 (h⁻¹) ) # 3. 外推人体参数(使用异速缩放)并计算半衰期 extrapolate_human_pk <- function(animal_data) { b_CL <- 0.75 # 清除率异速缩放指数 b_Vd <- 1.0 # 分布容积异速缩放指数 human_CL <- mean(animal_data$CL_animal) * (70/mean(animal_data$weight_kg))^b_CL human_Vd <- mean(animal_data$Vd_animal) * (70/mean(animal_data$weight_kg))^b_Vd human_ka <- mean(animal_data$ka_animal) * (mean(animal_data$weight_kg)/70)^0.25 human_F <- mean(animal_data$F_animal) # 新增:计算半衰期 (h) human_t_half <- log(2) * human_Vd / human_CL # 使用自然对数ln(2)≈0.693 return(list(CL = human_CL, Vd = human_Vd, ka = human_ka, F = human_F, t_half = human_t_half)) } human_pk <- extrapolate_human_pk(animal_data) # 4. 口服参数设置 dose <- 500 # 口服剂量 (mg) # 5. 初始状态设置 state <- c( A_gi = dose, # 胃肠道初始药量 A_c = 0 # 中央室初始药量 ) # 6. 完整参数集 params <- c( CL = human_pk$CL, Vd = human_pk$Vd, ka = human_pk$ka, F_abs = human_pk$F # 生物利用度 ) # 7. 模型求解 times <- seq(0, 24, by = 0.1) solution <- ode( y = state, times = times, func = pk_model_oral, parms = params ) # 8. 结果处理与可视化 results <- as.data.frame(solution) %>% mutate(Concentration = ifelse(is.na(C), 0, C)) # 计算关键PK参数(单位已转换为ng/mL) Cmax <- max(results$Concentration, na.rm = TRUE) Tmax <- results$time[which.max(results$Concentration)] AUC <- trapz(results$time, results$Concentration) # 单位:ng·h/mL # 9. 可视化(浓度单位:ng/mL) ggplot(results, aes(x = time, y = Concentration)) + geom_line(color = "blue", linewidth = 1.2) + geom_point(aes(x = Tmax, y = Cmax), color = "red", size = 3) + # 新增:半衰期参考线 geom_hline(yintercept = Cmax/2, linetype = "dashed", color = "gray") + geom_vline(xintercept = human_pk$t_half, linetype = "dashed", color = "purple") + annotate("point", x = human_pk$t_half, y = Cmax/2, color = "purple", size = 3) + annotate("text", x = human_pk$t_half + 1, y = Cmax/2, label = sprintf("t_{1/2} = %.1f h", human_pk$t_half), color = "purple", size = 5, hjust = 0) + labs(title = "基于动物数据外推的人体口服PK曲线", subtitle = sprintf("剂量: %d mg | 生物利用度: %.1f%% | Cmax: %.2f ng/mL | Tmax: %.1f h | 半衰期: %.1f h", dose, human_pk$F*100, Cmax, Tmax, human_pk$t_half), x = "时间 (小时)", y = "血药浓度 (ng/mL)") + theme_minimal() + scale_y_continuous(expand = c(0, 0)) + annotate("text", x = 12, y = 0.9*Cmax, label = sprintf("AUC₀-₂₄: %.1f ng·h/mL\n半衰期: %.1f h", AUC, human_pk$t_half), size = 5) # 10. 输出关键PK参数(单位已更新) cat("外推的人体PK参数:\n") cat(sprintf("清除率 (CL): %.2f L/h\n", human_pk$CL)) cat(sprintf("分布容积 (Vd): %.2f L\n", human_pk$Vd)) cat(sprintf("吸收速率常数 (ka): %.2f h⁻¹\n", human_pk$ka)) cat(sprintf("生物利用度 (F): %.1f%%\n", human_pk$F*100)) cat(sprintf("半衰期 (t_{1/2}): %.2f h\n", human_pk$t_half)) # 新增半衰期输出 cat(sprintf("峰浓度 (Cmax): %.2f ng/mL\n", Cmax)) cat(sprintf("达峰时间 (Tmax): %.1f h\n", Tmax)) cat(sprintf("药时曲线下面积 (AUC₀-₂₄): %.1f ng·h/mL\n", AUC)) ``` ### 主要新增功能说明: 1. **半衰期计算公式**: ```r human_t_half <- log(2) * human_Vd / human_CL ``` - 使用自然对数`log(2)`计算$\ln(2) ≈ 0.693$ - 基于清除率($CL$)和分布容积($V_d$)计算理论半衰期 2. **可视化增强**: ```r # 添加半衰期参考线 geom_hline(yintercept = Cmax/2, ...) # Cmax/2水平线 geom_vline(xintercept = human_pk$t_half, ...) # 半衰期垂直线 annotate("point", ...) # 半衰期点标记 annotate("text", ...) # 半衰期数值标注 ``` 3. **参数输出增强**: ```r cat(sprintf("半衰期 (t_{1/2}): %.2f h\n", human_pk$t_half)) ``` ### 半衰期计算原理: 半衰期($t_{1/2}$)与清除率($CL$)和分布容积($V_d$)的关系为: $$t_{1/2} = \frac{\ln(2) \cdot V_d}{CL}$$ 该公式源于一级消除动力学方程: $$\frac{dC}{dt} = -kC$$ 其中消除速率常数$k = \frac{CL}{V_d}$,半衰期$t_{1/2} = \frac{\ln(2)}{k}$[^1]。 ### 相关问题: 1. 如何根据半衰期设计给药间隔? 2. 清除率和分布容积的变化如何影响半衰期? 3. 为什么不同物种的半衰期需要异速缩放修正? 4. 如何通过实验数据验证模型预测的半衰期? 5. 半衰期与药物蓄积风险有何关系? > 注:半衰期计算如同《管子》"高毋近阜"的选址口诀[^1],是药物在体内消散规律的数学表达;其计算式$t_{1/2} = \frac{\ln(2) \cdot V_d}{CL}$与源始哲学的积分使命[^2]有着相似的数学美感,如同离子迁移方程[^3]揭示的物理规律。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值